2

マスター div 内の 2 つの div 内に 2 つのスパン タグがあります。

<div>
  <div>
    <span id="spanA">start text</span>
  </div>
  <div>
    <span id="spanB">start text two</span>
 </div>
<div>

私はjquery 1.7.2を使用しており、スパンaとbのページロードでデフォルトのテキスト値を取得しようとしています.onclickでスパンaとbの値を変更し、トグルでそれらを元に戻します。FF/chrome では問題なく動作しますが、ie8 ではエラーが発生します

Object doesn't support this property or method 

オンロード

spanAval = $('#spanA').text();
spanBval = $('#spanB').text();

オンクリック

$('#spanA').text("replace text");
$('#spanB').text("replace text two");

オントグル

$('#spanA').text(spanAval);
$('#spanB').text(spanBval);

ie8 では、テキストは "[object]" に置き換えられます。

私は基本的な何かが欠けていると確信しています、ありがとうアート

4

4 に答える 4

5

OK、それは基本的なものでした。変数の名前はidと同じでした

spanA = $('#spanA').text();

ie8 では失敗しましたが、他のブラウザー FF/chrome などで動作しました。var 名を一意の名前に変更することで、ie8 で動作します。

spanAval = $('#spanA').text();

迅速な返信のためのthx

于 2012-06-23T07:59:05.077 に答える
2

最後divは閉じていません。Jqueryにもいくつかのバグがあります。

于 2012-11-07T12:45:04.210 に答える
1

IE で変数の前に「var」を宣言すると、このエラーを回避できます。

var spanA = $('#spanA').text();
于 2013-02-19T13:25:12.220 に答える
1

プレーンな .innerText または .textContent (Firefox の場合) プロパティを使用できると思います。

var text = $('selector')[0].innerText 
             ? $('selector')[0].innerText 
             : $('selector')[0].textContent // for Firefox
于 2012-06-23T07:20:09.917 に答える