在用原生JavaScript的對(duì)象綁定的方式綁定onclick事件,出來的實(shí)際效果卻類似于onload的效果.想要鼠標(biāo)點(diǎn)擊按鈕彈窗提示,可是實(shí)際上卻是頁面一加載就彈窗提示,點(diǎn)擊反而沒有效果.為此,我嘗試了三種方式:實(shí)名函數(shù),在按鈕屬性中調(diào)用(屬性綁定).OK!匿名函數(shù),屬性綁定和對(duì)象綁定均OK!適應(yīng)函數(shù),賦值給按鈕對(duì)象的屬性onclick(對(duì)象綁定),就出現(xiàn)了上文所說的錯(cuò)誤!Error請(qǐng)看代碼片:1.對(duì)象綁定事件(失敗)//設(shè)置點(diǎn)擊按鈕//點(diǎn)擊//定義實(shí)名函數(shù)fun(),實(shí)現(xiàn)彈窗效果//functionfun(){alert("xxxx");}document.getElementById("b").onclick=fun();//?:onclick怎么成了onload的效果?2.匿名函數(shù)綁定(成功)//設(shè)置點(diǎn)擊按鈕//點(diǎn)擊//定義匿名函數(shù)fun(),實(shí)現(xiàn)彈窗效果//document.getElementById("b").onclick=function(){alert("xxxx");}3.實(shí)名函數(shù),屬性綁定(成功)//設(shè)置button的屬性onclick綁定fun()//點(diǎn)擊//定義實(shí)名函數(shù)//functionfun(){alert("xxxx");}為什么第一種方式偏偏失敗呢?這是什么機(jī)制導(dǎo)致的?
原生的JavaScript綁定onclick事件卻產(chǎn)生onload的效果?
暮色呼如
2019-05-21 16:59:20