【javascript】 link的href与button的onclick区别

来源:百度知道 编辑:UC知道 时间:2024/07/05 03:25:17
请教一个问题。
button 的 onclick="test();"

link 的 href="javascript:test();"
在处理上有什么不同。

我的画面上有一个隐藏项目在画面的最后面放着。
js函数test()里面,有给这个隐藏项目赋值的语句。

我先用的是link,当画面还没有加载完全(隐藏项目还没有被加载,link已经在画面显示的时候)。
我点link调用test(),程序出错,提示js错误,说隐藏项目为NULL。
画面的好多项目还没被显示出来,画面onload停止。
(上面这个结果我能理解,奇怪的是下面的把link换成button)

我把link换成button,调用同一个js函数test()。同样,
当画面还没有加载完全(隐藏项目还没有被加载,button已经在画面显示的时候)。
我点button调用test()。虽然此时网页左下角提示有js错误(说隐藏项目为NULL)。
但是,程序依然在进行。直到画面onload完了。

为什么在用button时,出现js错误的地方,程序不中止呢。

link 是html语言的一个属性,就是连接地址了,下一个显示的地址,即使这个地址不存在,也会转到的,
而onlick是js的一个事件,当点击时,回触发这个事件,会报错呢是因为它触发的test()是有问题的,所以页面停止.