我有一些onclick
的超链接。这些超链接将来自另一个页面的内容加载到div中。
超链接如下所示:
<a href="http://www.page2.html" onclick="gotopage2();">page 2</a>
我头脑中的代码是:
<script type="text/javascript">
function gotopage2(){
window.location("page2.html");
}
但这并不像我喜欢的那样有用。我想做的是:
如果启用了JavaScript,请使用onclick 如果禁用了Javasccript,请使用href。
问题是,在href中放一个#将允许执行javascript - 但是如果javascript被禁用,我将无法将url放入href中!
我不想在文档加载时获取页面上的所有超链接并带走href,我不喜欢使用很多。难道没有更好的方法吗?
答案 0 :(得分:1)
取消链接的默认操作。
如果您使用的是内部事件属性,请从中返回false。
onclick="gotopage2(); return false;"
如果您正在编写现代代码,请在事件对象上调用preventDefault
。
<a href="http://www.page2.html">page 2</a>
<script>
function goToPage(evt) {
evt.preventDefault();
window.location = this.href;
}
document.querySelector('a').addEventListener('click', goToPage);
</script>