美工要帮它完成一个菜单点击后加号图片变减号图片的效果,发过来一个页面里面是他找的不能运行的代码。里面有一串js代码:
[color=red]lbmc = eval('LM' + i);[/color]
if (lbmc.style.display == 'none') {
LMYC();
[color=red]lbmc.style.display = '';[/color]//看这里lbmc 直接可以当做dom对象使用了
}
else {
lbmc.style.display = 'none';
}
看lbmc = eval('LM' + i); lbmc是一个dom对象了,刚看到这个有点奇怪吧,其实eval是有document.getElementById()的功能的。不单可以用来执行js语句:eval('2+3');//返回5
这也是eval跟document.getElementById()的区别:document.getElementById('2+3')会把'2+3'当做一个Id值去查找Dom对象;
另外eval还可以返回属性值:eval('aId.href');//返回超链接对象的href属性值
eval也用做js代码的压缩混淆
[color=red]lbmc = eval('LM' + i);[/color]
if (lbmc.style.display == 'none') {
LMYC();
[color=red]lbmc.style.display = '';[/color]//看这里lbmc 直接可以当做dom对象使用了
}
else {
lbmc.style.display = 'none';
}
看lbmc = eval('LM' + i); lbmc是一个dom对象了,刚看到这个有点奇怪吧,其实eval是有document.getElementById()的功能的。不单可以用来执行js语句:eval('2+3');//返回5
这也是eval跟document.getElementById()的区别:document.getElementById('2+3')会把'2+3'当做一个Id值去查找Dom对象;
另外eval还可以返回属性值:eval('aId.href');//返回超链接对象的href属性值
eval也用做js代码的压缩混淆