禁用指向当前页码的链接。 (锚标记)

时间:2010-03-27 07:21:21

标签: javascript

  

我有一个锚标记。我想要   点击后禁用它。一世   尝试了以下方式。

  print "<script type='text/javascript'>parent.window.frames[2].document.getElementById('pagination').innerHTML+=\"<a href=# onclick='pageshow`($i);this.disabled=true'>$i</a>&nbsp;\"</script>";

注意: 我不想禁用链接。我想禁用链接操作。像谷歌搜索页面。

例如:1 2 3 4 5下一步

这里,一旦我点击第一页,我就无法再次点击同一页面。我想要的一样。

5 个答案:

答案 0 :(得分:7)

您还可以使用以下方法禁用锚标记。

<a href='URL' style='text-decoration:none;cursor: auto;' onClick='return false'>LINK</a>

答案 1 :(得分:3)

重读了这个问题......

Google不会“点击后禁用该链接”。

他们只是没有链接到当前页面。他们的标记令人震惊所以我不会复制它,一个简化的例子(第2页)将是:

<ol>
  <li><a>1</a></li>
  <li>2</li>
  <li><a>3</a></li>
  <li><a>4</a></li>
</ol>  

答案 2 :(得分:2)

我在这个问题上看到的最佳答案是使用jQuery。

How to enable or disable an anchor using jQuery?

这是链接中断的代码。 这会通过阻止<a id="current">(锚点击事件)

来禁用e
$(document).ready(function() {
  $('a#current').click(function(e) {
    e.preventDefault();
  });
});

答案 3 :(得分:1)

<a href="…" onclick="this.removeAttribute('href');">

答案 4 :(得分:0)

Javascript不是正确的方法,但我会为它提供一个答案:

var links = document.getElementsByTagName('a'), link, children;
for(var i = 0; i < links.length; i++) {
    link = links[i];
    if(link.href == window.location.href) {
        children = link.childNodes;
        for(var j = 0; j < children.length; j++) {
            link.parentNode.insertBefore(children[j], link);
        }
        link.parentNode.removeChild(link);
    }
}

编辑:我不知道“他 - 双曲棍球棒”在SO上是否是“粗俗的语言”但是如果是的话,这将在几个月后神秘地删除所以我用“heck”代替