我想要一个链接来执行 JavaScript 函数(如果 JavaScript 可用)或在 href
中输入 URL属性(如果不是)。
<a href="http://www.example.com" onclick="example(); return false;">
在此示例中,我想要执行 example()
如果 JavaScript 可用,则不输入链接或转到 http://www.example.com
如果 JavaScript 不可用。
虽然这在我尝试过的几乎所有浏览器中都有效,但在 IE 7 中,无论 JavaScript 是否处于事件状态,它都只会跟随链接。我可以做什么来防止这种情况发生?
最佳答案
您必须使用preventDefault()在事件对象上防止默认操作(即导航到链接的 URL)。
由于浏览器中的实现略有不同,您应该编写一个单独的函数来执行此操作并在事件处理程序中调用它:
function preventDefault(event) {
if (event.preventDefault) {
event.preventDefault();
} else {
event.returnValue = false;
}
}
此外,请务必在事件处理程序中返回 false。
如果您正在使用任何 JavaScript 库,那么此功能很可能已经存在。
关于javascript - 链接中不引人注目的 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10910926/