【发布时间】:2009-12-02 00:55:44
【问题描述】:
我正在尝试将 HTML 转换为纯文本。它有效率吗?我错过了什么吗?
txt = $("body").find("script,noscript,style,:hidden").remove().end().text();
谢谢!
【问题讨论】:
-
有问题的代码是否给您想要的结果?我认为这是唯一重要的衡量标准。我倾向于使用
lynx --dump之类的工具来获取网页的文本版本 - 但在客户端你的技术似乎很好。 -
你想做什么 $('body').text() 没有完成?
-
$('body').text() 还返回
-
不使用
remove()撕裂DOM 怎么样?试试:not伪选择器:$("*:not(script,noscript,style,:hidden)").text(),如果我理解正确的话,它会完成同样的事情。 -
这将无法正常工作,因为 text() 以递归方式工作并返回元素及其所有子元素的文本内容。所以像 $("*").text() 这样的东西会多次获得相同的文本内容。您只想使用顶部元素调用 text()。
标签: javascript jquery html text