JQuery:如何在html元素<b> </b>中创建单词列表?

时间:2013-11-03 15:23:12

标签: javascript jquery html

给定一个带有b元素的HTML DOM元素:

<div>
  My <b>text</b> have some <b>words</b> or <b>groups of words</b> in <b>bold</b>. How to do a variable <b>list</b> with these texts ?
</div>

鉴于我们使用JS或JQuery攻击它。

如何获取所有粗体字的列表,如下所示:

var list = [ "text", "have some ", "words", "groups of words", "in","bold", "list" ,...];

我尝试了.text().html(),但它不起作用,请参阅http://jsfiddle.net/LF5dX/1/

JSfiddle demo非常感谢所有未来的读者/用户。

3 个答案:

答案 0 :(得分:5)

您可以将.map().text().get()

一起使用
var list = $('div b').map(function(){
    return $.trim($(this).text());
}).get()

演示:Fiddle

答案 1 :(得分:2)

试试这个,

var arr=[];
$('div b').each(function(){
    arr.push($(this).text());
});
console.log(arr);

Demo

答案 2 :(得分:0)

编辑:哦,好的,我看到OP编辑了答案,所以这个答案不再是主题了。离开这里了。

不确定如何在jQuery中执行此操作,但这里是如何在纯JavaScript中执行此操作:

var div = document.getElementsByTagName('div')[0];
var textContents = [].map.call(div.childNodes, function(node) {
    return node.textContent.trim();
});
console.log(textContents);

http://jsfiddle.net/RGaQp/1/