0

テキストタグ (h3、h1、p など) 内に特にタグ付けされていないテキストがたくさんある巨大なページがあります。だから、次のようなもの:

<div class="class">Here's some text that really should be in a p tag, but oh well</div>

jQuery を使用してこのテキストを一度にすべて選択できるようにしたいのですが、テキスト固有のタグに含まれていないテキストを選択する方法がわかりません。$('text') のように行って、それを一日と呼ぶことができるように、いくつかの暗黙のタグまたは何かがありますか?

4

5 に答える 5

1

私が理解している限り、ページ内のすべてのテキストを取得したいのですが、異なる ID を持つ異なるタグに保存されているため、すべてのタグと ID を調べるのは大きな作業になります。

次のようにすべてのテキストを取得するだけです。

var t = $("body").text();

要素のタイプや ID に関係なく、ドキュメントの本文のテキストを取得します。

参照用にこのフィドルを参照してください: http://jsfiddle.net/7Xsxz/

于 2013-08-22T19:59:30.103 に答える
1

JavaScript では、要素を見つけてinnerTextを取得する必要があります。

var el = document.getElementsByClassName("class")[0];
var text = el.innerText;

jQuery では.text()メソッドを使用できます。

var text = $("div.class").text();

于 2013-08-22T19:59:43.027 に答える
1

タグで提供されたテキストのみを取得する必要がありますが、その場合、 $('body').text() または $('div').text() は両方とも誤った結果をもたらします。子要素のタグが何であれ、その中のすべてのテキストを提供します。

次のようにコーディングする必要があります。

var arr = new Array('P','SPAN','SCRIPT');
$(document).ready(function(){
  getText($('body'));
});

function getText(obj){
  obj.children().each(function(){
    if(arr.indexOf($(this).prop('tagName'))==-1)
      alert($(this).clone().children().remove().end().text());
      getText($(this));
  });
}

実施例

于 2013-08-22T20:53:35.980 に答える
1

テキストを含むことに固有の要素でなくても、クラス/要素セレクターで要素を取得できます。

$('.class').text();

$('div').text();
于 2013-08-22T19:55:03.730 に答える
1

div必要に応じて、クラスに関係なく、一般的に「テキスト」を取得できます。この場合、CSS でテキストに影響を与えています。

$('div').text(function(){
  $(this).css('color', 'blue');
});

コードペン リンク

于 2013-08-22T19:55:24.810 に答える