首页 新闻 搜索 专区 学院

求能博起的园友指教下,感谢非常

-1
[已解决问题] 解决于 2017-04-14 22:21

<body>
<button onclick='my_function()'>按钮1</button>
<button onclick='my_function()'>按钮2</button>
<button onclick='my_function()'>按钮3</button>
<script>
function my_function()
{
var str=document.getElementsByTagName('button')
for(var i=0;i<str.length;i++)
{
var myfn=function(a)
{

var c=0;
str[a].onclick=function()
{
c++
alert("点击次数为:"+c)
}
}(i)
}
}
my_function()
</script>
</body>

——————————————————————————————————

<body>
<button onclick='my_function()'>按钮1</button>
<button onclick='my_function()'>按钮2</button>
<button onclick='my_function()'>按钮3</button>
<script>
function my_function()
{
var str=document.getElementsByTagName('button')
for(var i=0;i<str.length;i++)
{
var myfn=function(a)
{

var c=0;
str[a].onclick=function()
{
c++
alert("点击次数为:"+c)
}
}(i)
}
}
</script>
</body>

 

问题来了:1、为什么在第二个代码中(script部分)中加入my_function()后,点击button,就不会空点一次,而直接进行str[a].onclick=function(){c++alert("点击次数为:"+c)}计数,具体原理是啥?2、明明button点击事件是onclick='my_function()',他为什么不只执行my_function(),难道body加载过script代码后,对button点击事件有影响??3、alert(my_function())弹出的undefined,具体指的是什么,,(my_function()无返回值)

问题补充:

有人没?????

渺小的0的主页 渺小的0 | 菜鸟二级 | 园豆:202
提问于:2017-04-08 22:46
< >
分享
最佳答案
0

这个和事件冒泡以及绑定有关的

奖励园豆:5
Jimmy.pan | 菜鸟二级 |园豆:242 | 2017-04-11 09:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册