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

window.onload=init;

function init(){

var x=document.getElementsByTagName('a');

for(var i in x){

x[i].onclick=function(){

return confirm('are you sure?');

}

}

可以直接运行成功

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

函数如下:

window.onload=init;

function init(){

var x=document.getElementsByTagName('a');

for(var i in x){

x[i].onclick=function(){

ask();

}

}

}

function ask(){

return confirm('are you sure?');

}

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

window.onload=init;

function init(){

var x=document.getElementsByTagName('a');

for(var i in x){

x[i].onclick=ask;


}

}


function ask(){

return confirm('are you sure?');

}

求教三种写法的区别

慕粉4240002
浏览 1207回答 1
1回答

西兰花伟大炮

第二种试了可以运行
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript