使用jQuery隐藏锚点

时间:2011-01-31 20:09:28

标签: javascript jquery hyperlink

我创建了一个动态页面,根据视图类型,有时会使用锚标记,有时则不会。从本质上讲,我希望能够控制是否单击页面跳转到锚点。是否可以使用jquery隐藏锚标签,因此它们基本上被删除了?我需要能够在必要时重新启用锚点,并始终在浏览器的地址栏中显示当前锚点。它似乎适用于FireFox,但不适用于Internet Explorer。

我有三个部分:'目录',内容和javascript(jQuery)代码

目录

<a id="expandLink0" class="expandLinksList" href="#green">What is green purchasing</a><br>
<a id="expandLink1" class="expandLinksList" href="#before">Before you buy</a><br>

目录

<ul id="makeIntoSlideshowUL">'
<li id="slideNumber0" class="slideShowSlide">
    <a name="green"></a>
    <div>Green Purchasing refers to the procurement of products and service...<a href="#topOfPageAnchor" class="topOfPageAnchorClass">Back to Top</a></div>
</li>
<li id="slideNumber1" class="slideShowSlide">
    <a name="before"></a>
    <div>We easily accomplish the first four bullet points under...<a href="#topOfPageAnchor" class="topOfPageAnchorClass">Back to Top</a></div>
</li>
</ul>

jQuery On Page Load

$(".slideShowSlide").each(function() {
$(this).children(":first-child").hide();
});

jQuery重新启用链接

$(".slideShowSlide").each(function() {
$(this).children(":first-child").show();
});

我还尝试在所有锚名称前添加一个额外字符以“禁用”它们,但IE不会使用attr(“name”)更改名称。它允许我做的唯一真正的操作是删除()。

1 个答案:

答案 0 :(得分:0)

尝试这样做:

$(".slideShowSlide").each(function() {
    $(this).children().first().hide();
});

甚至这样:

$(".slideShowSlide").each(function() {
    $(this).children(':first').hide();
});