猿问

onclick 事件点击将ask()直接写入和调用的区别

可以直接运行成功

但是将其写成以下形式不能正确运行,return false 没有被捕获,当点击取消时,链接仍然跳转 ,这是为什么?

函数如下:

https://img2.mukewang.com/5c0e07db000136b703850208.jpg

写成如下形式可以正确运行:

https://img2.mukewang.com/5c0e07e50001be1703250169.jpg

求教三种写法的区别

侃侃无极
浏览 529回答 1
1回答

肥皂起泡泡

首先题主先要知道&nbsp;confirm('are you sure?')&nbsp;点确定会返回true,点返回会返回false;然后再说三种写法并没有实质上的区别,只是变着花样返回值而已:1.你懂2.ask() 改为 return ask();3.三种中最好的写法另外看题主在研究事件绑定,如果是给一堆有规则的元素,如列表li绑定事件,最好的办法叫事件委托:<ul id="ul">&nbsp; <li>aaaaaaaa</li>&nbsp; <li>bbbbbbbb</li>&nbsp; <li>cccccccc</li></ul>window.onload = function(){&nbsp; var oUl = document.getElementById("ul");&nbsp; var aLi = oUl.getElementsByTagName("li");&nbsp; for(var i=0; i<aLi.length; i++){&nbsp; &nbsp; aLi[i].onmouseover = function(){&nbsp; &nbsp; &nbsp; this.style.background = "red";&nbsp; &nbsp; }&nbsp; &nbsp; aLi[i].onmouseout = function(){&nbsp; &nbsp; &nbsp; this.style.background = "";&nbsp; &nbsp; }&nbsp; }}再搞懂js的事件机制,捕获和冒泡的话,就差不多了。最后兼容性什么的IE:attachEvent,标准:addEventListener
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答