1

jquery をもう少し理解しようとして、テスト シナリオを実行しているところです。私がやろうとしていることがうまくいかないことは理解しています。トグルなどを含むより複雑な解決策を探すことができると確信していますが、これがうまくいかない理由の背後にあるロジックを知りたいです...

押すとテキストが挿入されるボタンが欲しいです。もう一度押すと、別のテキスト セットが挿入されます。クラスの追加/削除全体で遊んでいるので、クラス「text1」をtextarea divに追加しようとしています。次に、追加した「text1」クラスを選択して HTML を再度挿入しようとする別のクリック関数を作成します。

「textarea」セレクターの下に「textarea.text1」セレクターがある場合 (私の例に示されているように)、当然のことながら通過して text1 クラスを追加し、それを見つけてすぐに「テキスト コンテンツ 2」に入ります。

その上に「textarea.text1」セレクターを配置することで、何もせずに最初の.clickを通過してからクラスを追加すると考えました。これはうまくいかないようです...

次に、ChangeText ボタンをもう一度クリックして、スクリプトの最初の部分でクラスを検索することを期待していました.....

これが機能しない理由と、これを達成するための最も簡単な方法を誰かが説明できますか?

前もって感謝します。

Javascript:

$(document).ready(function() {
    $('.changetext').click(function() {
        $('.textarea').html('<p> Text Content 1</p>').addClass('text1');
    });
    $('.changetext').click(function() {
        $('.textarea.text1').html('<p> Text Content 2</p>');
    });
});

HTML:

<body>
    <div class="textarea"></div>
    <button class="changetext">ChangeText</button>
</body>

Jfiddle: http://jsfiddle.net/nlaffey/qzKJx/1/

4

2 に答える 2