当我点击a标签时,事件好像是无效的,而且return false;好像也是无效的。
会按照默认的效果显示,不知道为什么?
return false;好像是旧版本IE的写法。现在需要e.preventDefault();然后onclick="showPic(event)"把事件对象传进函数才行;this是元素;或者onclick="event.preventDefault();showPic(this);"这样也可以;
在DOM上定义onclick相当于在JS中这样注册事件:
element.onclick = function onclick(event) {
// 这里是DOM onclick中的代码;这就是为什么有event这个事件对象
}
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
代码有点乱。但是return false是没问题的..return false本身就相当于preventDefault+stopPropagation+直接返回。
首先先要确定一下是不是事件失效了,你把return false放在showPic方法之前,再看看页面会不会跳转,不会跳转的话,说明return false没问题,showPic有问题。
然后,你showPic里
document.getElementById('placeholder')
,代码里没见哪个元素的id是placeholder啊