2012-09-12 138 views
0

我有點熟悉jquery.on()功能綁定到事件,與此類似:綁定功能

$(document).on("mouseover", ".myclass", function() { 
    $(this).customerFunction(); //or something like .tooltip() 
    return this; 
}); 

但是,我怎麼綁定此customerFunction()每當存在於HTML .myclass ,而不僅僅是一個事件?我知道我可以爲標準頁面加載執行 $(".myclass").customerFunction();,但如果通過ajax加載頁面,則不起作用。

乾杯,

+0

如果你只用一個工具提示來加載所有元素,這將會好得多。我不知道這個插件是否支持,但qTip。 – Jon

+0

這裏的功能並不重要,我會換個話題。 – Dean

回答

0

看起來像jQuery選擇一個常見的錯誤

需要引用'tooltip'

嘗試"[rel='tooltip']"

+1

這不是一個錯誤,它會像書面一樣工作。 – Jon

+0

那麼你可能不得不張貼代碼爲ajax加載 – Neverever

+0

你應該更好地指出,在OP,雖然我沒有看到如何插入元素的方式有任何不同。 – Jon

1

嘗試以下

$("[rel='tooltip']").on("mouseover", function() { 
    $(this).tooltip(); 
    return this; 
}); 
+2

這是如何工作的元素動態加載?我認爲你誤解了'開'的作品。 – Jon

+0

你說得對。我不認爲我正在使用正確的功能。 jQuery.on()用於事件,所以我試圖找出哪個函數是正確的。我試圖將.tooltip()綁定到任何時候rel ='tooltip',或者任何類,例如.class-name-1出現在HTML中,而不管它是否通過ajax加載。 – Dean

+0

嗨Kapil,問題不是鼠標懸停。我試圖將函數綁定到一個元素而不是一個事件。 – Dean

0

Neverever給了我一個好主意。我試了一下,它的工作!

$(document).ajaxSuccess(function() { 
    $('.myclass').customerFunction(); //or $("[rel=tooltip]").tooltip(); 
    return this; 
});