如何在禁用js时处理javascript超链接

时间:2014-04-20 20:49:49

标签: javascript html html5 hyperlink

我有一些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,我不喜欢使用很多。难道没有更好的方法吗?

1 个答案:

答案 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>