写一个封装DOM查询的例子
function Elem(id) {
this.elem = document.getElementById(id)
}
Elem.prototype.html = function (val) {
var elem = this.elem;
if (val) {
elem.innerHTML = val;
return this; // 链式操作,通过new调用构造函数,this指向的是它的构造函数创建出来的对象
} else {
return elem.innerHTML;
}
}
Elem.prototype.on = function (type, fn) {
var elem = this.elem;
elem.addEventListener(type, fn);
return this;
}
// 用法
var box = new Elem('box');
console.log(box.html())
box.html("<p>hello world</p>")
.on('click', function () {
console.log('click');
})
.html("<p>hello javascript</p>")
写一个封装DOM查询的例子