仅定位一些div内容

时间:2012-10-18 03:47:34

标签: jquery

我有以下html标记

<div class="title-wrap">
      <span class="title">Hello World</span>
        <br/>
   This title is about Hello World
</div>

我希望定位文本'这个标题是关于Hello World'

但我无法解决如何做到这一点,包括跨度?是否可以使用此格式的html实现此目的?

我尝试过使用

var test = (jQuery('.title-wrap').text() || '' );
alert (test);

但是会返回

Hello World

This title is about Hello World

this fiddle所示。

3 个答案:

答案 0 :(得分:3)

您可以使用:

var test = (jQuery('.title-wrap')
        .clone()    //clone the element
        .children() //select all the children
        .remove()   //remove all the children
        .end()  //again go back to selected element
        .text() || '' );
alert (test);

输出:

This title is about Hello World

小提琴:http://jsfiddle.net/Y6dcU/6/

答案 1 :(得分:3)

您可以使用.contents()获取.title-wrap的所有子节点,然后使用.last()选择最后一个节点,因为那是您想要的节点。

jQuery('.title-wrap').contents().last().text()

http://jsfiddle.net/Y6dcU/11/

答案 2 :(得分:-2)

尝试将其包裹在span元素中。您可以使用标题(h1,h2等)替换第一个范围,也可以使用id或class属性来获取特定的引用:

<div class="title-wrap">
    <span class="title">Hello World</span>
    <br>
    <span id="myTitle">This title is about Hello World<span>
</div>

在JS中你会使用:

var test = (jQuery('#myTitle').text() || '' );
alert (test);