读书人

请教:怎样在JS中动态添加代参事件

发布时间: 2013-04-05 10:24:33 作者: rapoo

请问:怎样在JS中动态添加代参事件
function judge(div,num){
//匹配
switch(num){
case "1":
//更改图片路径
div.style.backgroundImage = "url('images/get.jpg)";
break;
case "2":
//更改图片路径
div.style.backgroundImage = "url('images/春.jpg')";
break;
}
function inital(){
//获取li对
var objLi = document.getElementsByTagName("li");
//循环
for(var i = 1;i <= objLi.length;i++){
objLi[i].onclick = function(){check(i)};
}
}
结果说我的onclick为空!请问,代参应该如何解决呢?
[解决办法]
1、你确定inital()方法是要写在judge(div,num)里面?
2、没见你的check(i),是否是因为没有贴出来?
3、没见有哪里调用到inital()方法,自然不会去执行objLi[i].onclick = function(){check(i)};
[解决办法]
objLi[i].onclick = function(){check(i)};
---------------------------------------------
方法1:
objLi[i].onclick = function(i){
//...代码实现
};

方法2:
objLi[i].onclick = check;

方法3:
objLi[i].onclick = new Function("check(i);");

objLi[i].onclick = new Function("check(" + i + ");");

方法4:
使用attachEvent或addEventListener方法,有兴趣的话,可参考:
http://blog.csdn.net/tzsmin/article/details/3784683
[解决办法]
页面加载完有调用init方法吗?
[解决办法]
check方法有定义吗?

读书人网 >Java Web开发

热点推荐