我需要将所有项目符号包装在一个带有 span 标签的 div 中。• HTML 代码是•
.
我发现下面的代码可以做到这一点,除了它还删除了 div 中的所有链接和其他 HTML 代码。
var $bc = $('#site-nav');
$bc.html($bc.text().split('•').join('<span>•</span>'));
如何在不丢失链接的情况下包裹所有子弹?这是上面代码的一个小提琴:
谢谢!
我需要将所有项目符号包装在一个带有 span 标签的 div 中。• HTML 代码是•
.
我发现下面的代码可以做到这一点,除了它还删除了 div 中的所有链接和其他 HTML 代码。
var $bc = $('#site-nav');
$bc.html($bc.text().split('•').join('<span>•</span>'));
如何在不丢失链接的情况下包裹所有子弹?这是上面代码的一个小提琴:
谢谢!
为了避免替换 html 并可能弄乱事件和数据,我会wrap()
改用:
$('#site-nav').contents().filter(function() {
return this.nodeType == 3 && $.trim($(this).text()) == '•';
}).wrap('<span/>');
你应该替换text()
为html()
var $bc = $('#site-nav');
$bc.html($bc.html().split('•').join('<span>•</span>'));
否则你只读取元素的文本内容,不包含任何<a>
标签。因此样式和链接被删除。