剥离特定标签的内容

时间:2014-11-14 17:12:23

标签: javascript jquery

我可以正确地从字符串中删除html:

HtmlToText = function(html){
    return jQuery(html).text();
};

但有时会出现包含样式的HTML字符串,如:

<style type="text/css">
.button:hover {
    background-color: #6B6D71;
}
</style>

该功能会删除<style>标签,但我的文字最终会结束 .button:hover { background-color: #6B6D71; }

我想知道jQuery是否能够删除样式以及如何删除样式。

2 个答案:

答案 0 :(得分:2)

您可以使用.clone()并使用.remove()删除样式标记。

var $foo = $('.foo'),
    $fooClone = $foo.clone();

$fooClone.find('style').remove();

$('#output').text($fooClone.text());

这是一个小型演示:http://jsbin.com/lamasabapu/1/edit?html,css,js,output

答案 1 :(得分:2)

您可以使用remove()方法仅定位样式标记,而无需花费太多开销:

HtmlToText = function(html){
    return jQuery(html).remove('style').text();
};

Demo