是否有可能我们可以使用Javascript或JQuery编辑包含在HTML注释内的文本。例如,如果我有类似的评论:使用JQuery或Javascript编辑HTML注释文本
<!-- This is a comment -->
那么是否有可能使用JQuery或Javascript更改文本'这是一条评论'?
谢谢。
是否有可能我们可以使用Javascript或JQuery编辑包含在HTML注释内的文本。例如,如果我有类似的评论:使用JQuery或Javascript编辑HTML注释文本
<!-- This is a comment -->
那么是否有可能使用JQuery或Javascript更改文本'这是一条评论'?
谢谢。
可以使用replace()
功能是这样的:
var x = $.trim($('#container').html()).replace('<!--','').replace('-->','');
还有一个plugin,你可以用它来取消注释是一个jQuery插件,可以让你“动”评论HTML代码到DOM
编辑: -
如果你想从DOM中删除它作为罗里评论说,那么你可以试试这个:
$('*').contents().each(function()
{
if(this.nodeType == Node.COMMENT_NODE)
{
$(this).remove()
}
});
请注意,这将使文本的注释在DOM中可见,它不会保留注释并更改其中的文本 - 这正是OP似乎期望做的事情。 – 2015-04-01 12:11:51
@RoryMcCrossan: - 更新了我的答案,也将其从DOM中删除。 – 2015-04-01 12:18:56
你可以通过评论的父元素的childNodes
迭代,过滤commentNode并改变它的值通过重置nodeValue
属性:
$('#parent').contents().each(function() {
if (this.nodeType === 8) {
this.nodeValue = 'changed value';
}
});
var parentNode = document.getElementById('parent');
[].forEach.call(parentNode.childNodes, function(el) {
if (el.nodeType === 8) {
el.nodeValue = 'changed value';
}
});
当然。这是jQuery的重点,操纵DOM。看到这个https://api.jquery.com/text/ – 2015-04-01 12:07:07
啊。我看到你已经编辑过你的文章(或Rory做过:)你想改变评论内的内容。这完全不同。 – 2015-04-01 12:10:50
你想通过这样做来达到什么目的? – Quentin 2015-04-01 12:19:49