0

私は、jQueryを使用してコンテンツをオンザフライで作成する次のプロジェクトでSlabText( http://www.frequency-decoder.com/demo/slabText/ )を使用しています(つまり、ドキュメントの準備ができたイベントの後)。

具体的には、AJAXフォームの送信後、ちょっとしたお礼のメッセージを表示したいと思います。理論的にはすべてかなり単純ですが、SlabTextは通常のクールな方法で非表示のコンテンツを処理しません。ページが読み込まれたときに非表示にされたものを除いて、すべてのタイトルを処理します

これが私のコードです:

<div id="result" class="container hide">
    <div class="row">
        <div class="span7">
            <h2 class="slab">
                <span class="slabtext">Thanks!</span>
            </h2>
        </div>
        <div class="span5">
            <h2 class="slab">
                <span class="slabtext">We'll be in touch</span>
                <span class="slabtext">very soon</span>
            </h2>
        </div>
    </div>
</div>

TwitterのBootstrapと'hide'クラスを使用して、親div(#result)をに設定していますdisplay: none。フォームが送信されたら、このdivをdisplay: block(JS経由で)設定しましたが、喜びはありません。また、JS関数内に(つまり、表示を変更した後)slabTextを再度処理する行を含めようとしました。残念ながら、$('#result').slabText();これもまだ機能しません。

この問題をよりよく示すためにJSFiddleを作成しました:http://jsfiddle.net/YeZfd/

私は愚かで基本的な何かを見逃していると確信しています。もしそうならアドバイスしてください。

助けてくれてありがとう!ジョージ

4

1 に答える 1

1

実際のコードを見なくても、「success」の下のajax設定にslabText呼び出しを追加できるはずです。以下のように:

success: function(data){
    $('#result').slabText();            
});

詳細については、.ajaxのドキュメントを参照してください。

アップデート - -

例をありがとう。問題は、#resultsDIVで、実際のテキストではなく、親コンテナでslabTextを実行しようとしていることであるように思われます。

これを変える

$('#result').slabText();

これに

$('#result .slab').slabText();
于 2013-01-16T16:21:03.420 に答える