sycho 关注了问题 · 2016-11-30
我先获取到li标签,增加点击事件,但是不能工作;
li.onclick = function() {
alert(1);
};
关注 7回答 7
sycho 回答了问题 · 2016-11-30
//获取li的数组,因为匹配的tag有很多
lis=document.getElementsByTagName("li");
//然后写个for循环或者对单个的li写onclick
//代码如下:
for(var i=0,len;lis.length;i
lis[i].οnclick=function(){
alert(this);
}
};
//或者:
lis[0].οnclick=function(){
alert(this);
};
{代码...}
关注 7回答 7
sycho 关注了问题 · 2016-03-31
(function() {
//use a private class
function _$(els) {
this.elements=[];
//why '++i' ?
for (var i=0,len=els.length;i
var element=els[i];
if (typeof element ==='string') {
element=document.getElementById(element);
}
this.elements.push(element);
}
return this.elements;
}
//add method to prototype and return this.
_$.prototype={
each:function(fn) {
for (var i=0,len=this.elements.length;i
fn.call(this,this.elements[i]);
}
return this;
},
setStyle:function(prop,value) {
this.each(function(el) {
el.style[prop]=value;
});
return this;
},
show:function(){
var that = this;
this.each(function(el) {
that.setStyle("display","block");
});
return this;
},
addEvent:function(type,fn) {
var add=function(el) {
if (window.addEventListener) {
el.addEventListener(type,fn,false);
}else if (window.attachEvent) {
el.attachEvent('on'+type,fn);
}
};
this.each(function(el) {
add(el);
});
return this;
}
};
//return window._$
window.$=function() {
return new _$(arguments);
};
})();
//TODO
$("test").addEvent();
关注 2回答 1
sycho 提出了问题 · 2016-03-31
(function() {
//use a private class
function _$(els) {
this.elements=[];
//why '++i' ?
for (var i=0,len=els.length;i
var element=els[i];
if (typeof element ==='string') {
element=document.getElementById(element);
}
this.elements.push(element);
}
return this.elements;
}
//add method to prototype and return this.
_$.prototype={
each:function(fn) {
for (var i=0,len=this.elements.length;i
fn.call(this,this.elements[i]);
}
return this;
},
setStyle:function(prop,value) {
this.each(function(el) {
el.style[prop]=value;
});
return this;
},
show:function(){
var that = this;
this.each(function(el) {
that.setStyle("display","block");
});
return this;
},
addEvent:function(type,fn) {
var add=function(el) {
if (window.addEventListener) {
el.addEventListener(type,fn,false);
}else if (window.attachEvent) {
el.attachEvent('on'+type,fn);
}
};
this.each(function(el) {
add(el);
});
return this;
}
};
//return window._$
window.$=function() {
return new _$(arguments);
};
})();
//TODO
$("test").addEvent();
{代码...}
关注 2回答 1