0

Q1) Twitter ブートストラップのツールチップを使用しています。コンテンツが ajax で追加されたときに機能しないことに気付きました。多くのグーグルの後、ソリューションはajaxリクエストの後にツールチップをトリガーするようです。しかし、私の場合、フレームワーク用に組み込みの ajax API に依存しているため、これは不可能です。他の回避策はありますか?

$('.tootip').tooltip({placement:'left'});

Q2) jQuery on() のドキュメントでは、使用法は次のように言及されています

$(document).on(event, selector, function(){ //do stuff here })

それで、これは私がしなければならないことですか?

$(document).on('ready', '.tootip', tooltip({placement:'left'}));

しかし、うまくいきません。

4

1 に答える 1

1

A1) ajax 呼び出しに指定するオプション/パラメーターの 1 つは、ajax 呼び出しが完了して成功したときにトリガーされるコールバック関数です。この成功のコールバックは、ツールチップを初期化する必要があります。
たとえば、jQuery を使用している場合:

$.ajax({
    url: 'your url'
    success: function(result) {
        // do your sruff here. Result holds the return data of the ajax call
    }
});

A2) 3 番目のパラメーター: を見てくださいfunction(){ //do stuff here }。関数を提供する必要があります。tooltip({placement:'left'})代わりに、あなたが提供したのは、この場合は関数ではなくオブジェクトを返す関数を呼び出した結果です。やったほうがいい:

$(document).on('ready', '.tootip', function() {
    $('.tootip').tooltip({placement:'left'}); 
});

コメントに関する更新:
関数内では、成功のコールバックであろうとイベント関数であろうと、複数の関数を呼び出すなど、好きなことを行うことができます。

$(document).on('ready', '.tootip', function() {
    // Do many operations as much as you like here
    func1();
    func2();
});

$.ajax({
    url: 'your url'
    success: function(result) {
        // Do many operations as much as you like here
        func1();
        func2();
    }
});

お役に立てれば!

于 2012-11-14T06:46:05.837 に答える