17
<div class="boxen checkedzahlen" id="box41_0_1">
 41
 <input type="checkbox" value="1" name="cb41_0_1" id="cb41_0_1" checked="checked"/>
</div>

このようなものが与えられましたが、 (クラス)がクリックされた41場合、どのようにテキストをアニメーション化できますか?$(this)boxen

this > *動作しません。どちらもしませんthis:children

4

4 に答える 4

36

やや紛らわしいタイトルのため、一部の人々 (私のような)は、DOM 要素のテキスト コンテンツを取得する方法を探してこの質問に来るかもしれません。これは次の方法で実現できます。

$("#myselector").text() // returns the content of the element as plain text
于 2011-06-06T05:00:09.173 に答える
5

$("#divID").html() はテキストを内部に取得します。

于 2009-10-29T15:27:08.497 に答える
2

div を選択するには、次のようにします。

$('#box41_0_1')

ボックス全体をアニメーション化するには、次のようにします。

$('#box41_0_1').fadeOut().fadeIn();

または他のアニメーション効果

編集:内部テキストのみを選択する場合は、内部テキストを div でラップすることもできますが、提供したコードを使用すると、チェックボックスも選択されると思います。コード例:

$('#box41_0_1').wrapInner("<span id='span41_0_1'></span>");
$('#span41_0_1').fadeOut().fadeIn();
于 2009-10-29T15:07:05.567 に答える
0

div の内容をスパンでラップしてから、入力をそのスパンの外に移動できます。次に、スパンをアニメーション化できます。このようなもの:

$('.boxen').each(function() {
  var $thisBox = $(this);
  $thisBox.wrapInner('<span></span>');
  $thisBox.find('input').appendTo($thisBox);
});

$('.boxen span').animate({fontSize: '28px'}, 400);

次のように、直接的な DOM スクリプトと jQuery を組み合わせて使用​​することもできます。

$('.boxen').each(function() {
  var newSpan = document.createElement('span');
  newSpan.innerHTML = this.firstChild.nodeValue;
  this.firstChild.nodeValue = '';
  $(this).prepend(newSpan);
});

$('.boxen span').animate({fontSize: '28px'}, 400);

どちらの方法でも機能するはずです。

于 2009-10-29T18:45:47.480 に答える