如何在pageload上禁用Anchor(a)标记或(默认情况下禁用)并使用jquery或Javascript启用它?

时间:2016-09-05 14:16:20

标签: javascript jquery html css

如何在pageload上禁用Anchor(a)标记或(默认情况下禁用)并使用jquery或Javascript启用它?

3 个答案:

答案 0 :(得分:2)

您可以将href属性更改为data-href并使用以下内容添加href属性:

$(function() {
    $('[data-href]').each(function() {
        var self = $(this);
        self.attr('href', self.data('href'));
    });
});

这将遍历所有具有data-href且添加href属性的元素。

答案 1 :(得分:0)

由于您需要默认禁用锚标记,因此您可以为每个标记添加一个类,并使用javascript删除该标记。

.not-active {
    pointer-events: none; // disables all the clicks
    cursor: default; // shows the default cursor when you hover it instead of hand
}

此外,您可以更改字体颜色和其他颜色,以使文本看起来不像链接。

[编辑]

<script>
    var anchorElements=document.getElementsByTagName("a"); //Gives the list of all anchor tag elements in the page as an array.
    for(i=0;i<anchorElements.length;i++) // Iterate over the array
        anchorElements[i].classList.remove("not-active"); // for each element .classList returns the list of classes specified. remove() is an array function to remove an element in the array
</script>

如果您使用的是jQuery,可以使用removeClass()jQuery函数

$("a").removeClass("not-active");

答案 2 :(得分:0)

要回答你的评论(&#34;我如何使用javascript删除calss?plz help&#34;)关于删除类,有一个名为classList的属性包含其类属性。此属性提供的方法可以轻松添加或删除类。类似的东西:

var myItemClasses= document.getElementById("item").classList;
myItemClasses.remove("my-classname"); // to remove
myItemClasses.add("my-classname"); // to add

希望这有帮助。