我有一个包含链接和子链接的无序列表。我想在列表中的子链接前面添加一个 '»'
字符。我可能可以通过 list-style-image:url
使用 CSS 做到这一点,但我宁愿只有文本。到目前为止,我已经尝试过预置但没有取得太大成功。
HTML:
<nav>
<ul>
<li><a href="#">link 1</a></li>
<li><a href="#">link 2</a></li>
<ul>
<li><a href="#">sublink link 1</a></li>
<li><a href="#">sublink link 2</a></li>
</ul>
<li><a href="#">link 3</a></li>
</ul>
</nav>
我正在使用这段代码:
$("ul li li").each(function() {
$(this).closest('li').prepend("»").html();
});
如果我去掉一级列表项并添加到所有列表项之前,那么它可以工作,但在 Web 检查器中查看时,»
字符仍然有引号。我还尝试了最接近的内容的各种化身,例如 li a
但这也没有什么不同。我没有收到任何语法错误,所以不确定我做错了什么。
我有一个 Fiddle here .
最佳答案
为什么不用一些 CSS?
ul ul li:before {
content: '»';
}
像这样使用 JavaScript 修改 UI 是一种资源浪费。在不知道您的实际用例的情况下,这是主观的。
关于javascript - JQuery 在链接前面添加文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12467687/