HTML 事件触发的问题

ZC1_8U}[QS[3Y7(T`V}BOSM.png
VCIPO~7JVNH_NS~1[T~}L8T.png

当我点击a标签时,事件好像是无效的,而且return false;好像也是无效的。
会按照默认的效果显示,不知道为什么?

阅读 3.3k
4 个回答

代码有点乱。但是return false是没问题的..return false本身就相当于preventDefault+stopPropagation+直接返回。
首先先要确定一下是不是事件失效了,你把return false放在showPic方法之前,再看看页面会不会跳转,不会跳转的话,说明return false没问题,showPic有问题。
然后,你showPic里document.getElementById('placeholder'),代码里没见哪个元素的id是placeholder啊

把href改成data-href

return false;当然无效的,如果想阻止默认行为用:e.preventDefault()
事件无效这个是框架后遗症

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这个事件对象
    
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题