如何提取所有html文本,不包括脚本标记内的内容?

时间:2017-10-30 08:15:21

标签: javascript jquery html

对于一个项目,我想创建一个存储html中所有文本的变量,所以几乎标签,标题,段落之间的所有内容,以及网页上用户可见的一切。但是,我也不希望脚本标记之间的javascript代码也显示在此输出中。

我正在尝试这样的事情:

var content = $("html").remove("script").text()

但这不起作用。

2 个答案:

答案 0 :(得分:0)

这是:

首先使用它:

var r = document.getElementsByTagName('script');

for (var i = (r.length-1); i >= 0; i--) {

    if(r[i].getAttribute('id') != 'a'){
        r[i].parentNode.removeChild(r[i]);
    }

}

然后:

var txt = document.body.innerText;

OR

var txt = $('body').text();

答案 1 :(得分:0)

var contentDiv = $('<div/>', {
    html: $('body').clone()
});

contentDiv.find('script').remove()
return contentDiv.text()