0

寻找一种解决方案,在该解决方案中,我根据我的侧导航为我的内容区域创建链接。我让它工作,但我需要排除某些标签,但它不会跳过它们。

$("#left_nav").find("a").each(function(){
    var linkText = $(this).text();
    var linkHref = $(this).attr("href");
    var html = $('#center_content').not("a, h1, img").html();
    var re = new RegExp(linkText, "gi");
    $('#center_content').html(html.replace(re, '<a href="'+linkHref+'">'+re.exec(html)+'</a>'));
});

not("a, h1, img") 不起作用。它仍在替换链接中的文本。我想跳过替换 a、h1 或 img 标记中的任何内容。有一个更好的方法吗?

4

1 回答 1

0

大概:

$('#center_content').find('*:not(a, h1, img)').html();

因为在您的示例中,您只需选择带有 ID 的元素'#center_content',而没有过滤其中的元素。

UPD:http: //jsfiddle.net/KqBCF/2/

于 2013-09-03T13:49:54.720 回答