如何封装一个最简单的jquery插件

 我来答
就烦条0o
2017-12-31 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46501
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
HTML部分
<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><title>js封装简易jquery</title></head>
<body>
<h2>js封装简易jquery</h2>
<div id="h">hello world</div>
<div id="box">我是一个带有class属性的标签</div>
<script src="../js/demo2.js"></script>
</body>
</html>

js部分
;(function (win) {
var jQuery = function (selecter) {
this.version = '1.0.1'; //版本号
this.selecter = selecter;
return this;
};
jQuery.prototype.getElement = function () {
this.elem = document.getElementById(this.selecter);
return this;
};
jQuery.prototype.html = function (val) {
var elem = this.elem;
if (val) {
elem.innerHTML = val;
return this;
} else {
return elem.innerHTML;
}
};
jQuery.prototype.on = function (type, Fn) {
var elem = this.elem;
elem.addEventListener(type, Fn);
return this;
};
jQuery.init = function (selecter) {
return new this(selecter);
};
win['$jQuery'] = jQuery;
})(window);
function $(selecter) {
var test = $jQuery.init(selecter);
return test.getElement(selecter);
}
function jQuery(selecter) {
var test = $jQuery.init(selecter);
return test.getElement(selecter);
}
//不妨测试一下,来个点击事件
jQuery('h').html('hello girl').on('click', function () {
console.log('hello boy');
});
//或者来个赋值操作
$('box').html('hello baby');
console.log($().version);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式