直接在html里给标签的点击事件绑定函数的时候,为什么不能这么写?
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<a id="a1" href="#" onclick="(function(){alert('a1');})() ">正确</a>
<a id="a2" href="#" onclick="function(){alert('a2');}">错误</a>
<a id="a3" href="#">错误吗?</a>
</body>
</html>
<script type="text/javascript">
var a3 = document.getElementById('a3');
a3.onclick= function(){alert('a3');};
</script>结果就是a1和a3的点击事件会正常执行,a2就会有错误。
可是a1、a2、d3的点击事件的绑定方式都是一样的使用匿名函数,而且a2和a3的匿名函数的写法也都是"function(){}",为啥a2这种写法不行呢?
哪位清楚的,给我多说说这方面的知识吧……
相关推荐
VUE解决 v-html不能触发点击事件的问题
今天小编就为大家分享一篇VUE解决 v-html不能触发点击事件的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
JavaScript给按钮绑定点击事件(onclick)的方法
主要介绍了JavaScript给按钮绑定点击事件(onclick)的方法,涉及javascript绑定onclick的基本技巧,非常具有实用价值,需要的朋友可以参考下
vue实现在v-html的html字符串中绑定事件
今天小编就为大家分享一篇vue实现在v-html的html字符串中绑定事件,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
js a标签点击事件
当我们在处理a标签上的点击事件时发现即使href=””里面为空,点击事件的效果也不明显,这种情况该如何处理呢?常见的处理方法有以下几种: 1.a href=”[removed]void(0);” rel=”external nofollow” onclick=”method()” 这种方法是比较最常用的方法,也是最周全的方法,onclick方法负责执行js函数,而void是一个操作符,void(0)返回undefined,地址不发生跳转。而且这种方法不会像第一种方法一样直接将js方法暴露在浏览器的状态栏。 2.a href=”[removed];” rel=”external nofo
JS检测页面中哪个HTML标签触发点击事件的方法
本文实例讲述了JS检测页面中哪个HTML标签触发点击事件的方法。分享给大家供大家参考,具体如下: 在html标签中,为了页面显示的美观,会在标签中相互嵌套,在做“效果”的时候就难免不了的添加各种事件,例如: dddd 当用户点击的时候,想确定是链接产生的事件还是span标签onclick标签产生的事件,这个有时候是很有必要的,至少我认为在调试的时候有作用,因此我写了一个简单的demo,用于各位看官学习 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional


