基本上,我想做与此相反的事情:how do i hide anchor text without hiding the anchor
我希望在我的网页上能够有一个链接,在一定的客户端确定的条件下,将能够停用该链接,但仍然显示文本。有没有办法做到这一点,而不是有两个独立的元素(一个有锚和文本,另一个只有文本),然后在两者之间翻转可见性?
编辑:对不起,应该已经说清楚了。我希望该链接不是样式像一个链接时,它被停用。
发布于 2013-01-17 05:38:57
将<a>
替换为通用<span>
,然后再替换回来。
一个简单的替代策略是:
--
var node = document.getElementById("example");
var new_node = document.createElement("a"); // or "span"
new_node.innerText = text;
node.parentNode.insertBefore(new_node, node);
node.parentNode.removeChild(node);
这段代码并不完整,只是为了给您一个概念。
发布于 2013-01-17 05:45:07
当满足条件时,可以删除href属性。
请查看此示例。
HTML
<a href="http://google.com"> Link to google</a>
<p> Hover over me to remove the link from the anchor</p>
Javascript(使用jquery)
$("p").on("mouseover", function(){
$("a").removeAttr("href");
});
当你将鼠标悬停在段落标签上时,href会被移除,但如果你从未将鼠标悬停在它上面,你可以转到google.com,将鼠标悬停在p标签上就是一个例子。
示例Fiddle
这将永久地从锚标签中删除href。当满足另一个条件时,您必须重新添加它。
发布于 2013-01-17 05:39:38
简短的回答是,不。任何隐藏的或不可见的元素也会隐藏它的子元素。您可能会发现,在需要时简单地修改锚标记的属性会更容易。
防盗链:
<a href="#some-url-here" class="">Text here</a>
非热链接
<a class="no-link" data-url="#some-url-here">Text here</a>
您可以使用JavaScript删除href
属性,存储它的值,并添加一个可用于覆盖任何样式的类。
https://stackoverflow.com/questions/14368269
复制相似问题