3

以下の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

このフィドルに示されているように。

4

3 に答える 3

3

を使用.contents()してすべての子ノードを取得し、最後のノードを選択するために.title-wrap使用できます。.last()

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

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

于 2012-10-18T04:05:03.367 に答える
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/

于 2012-10-18T03:53:33.690 に答える
-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);
于 2012-10-18T03:58:58.930 に答える