我有一些看起来像这样的标记:
<div id="breadcrumb"><a href="http://domain.com/site/">Site</a> »
<a href="http://domain.com/site/sub/"></a> »
<a href="http://domain.com/site/sub/sub/">Heading</a> » Document title</div>
在页面上,它看起来像:
网站»»标题»文档标题
我想使用jQuery查找空的“a”标记,将其删除,然后删除其中一个&gt;&gt;字符。
我有这个:
$(document).ready(function() {
if ($('#breadcrumb').length) {
$('#breadcrumb a:empty').replaceWith('-');
$('#breadcrumb').html($('#breadcrumb').html().replace(/» - »/, "»"));
}
});
请注意&gt;&gt;字符在Javascript代码本身中。这有效,但似乎不对。我正在寻找通过正则表达式找到该角色的正确方法。或者,我正在寻找有人说这段代码没问题。 :)我已经测试了它,它似乎适用于我使用过的浏览器。感谢。
(我最终将修复创建这些面包屑的过程,以便它不再输出空标记......但我正在寻找一个止损位置!)
答案 0 :(得分:2)
你很好,javascript中的正则表达式用斜杠表示,就像字符串用引号表示一样。当你第一次看到它时会让人感到困惑,但这是一个非常有效的javascript正则表达式。
答案 1 :(得分:0)
我会使用jQuery DOM操作API
下()
和
删除()
$('#breadcrumb a:empty').next().remove();
$('#breadcrumb a:empty').remove();