2010-12-09 51 views
0

我使用hoverIntent jQuery plugin來代替jQuery的hover()方法。我想要自動調用鼠標移出事件。我可以通過觸發某些東西在jQuery中調用這個匿名函數嗎?

當使用hover()時,我可以通過調用mouseout()來觸發mouseout事件。這在使用hoverIntent時不起作用。

我也嘗試調用一個命名匿名函數,但它不適用於我(我聽說老的IE不喜歡命名的匿名函數)。

Here is an example on jsFiddle.

如果我自動調用鼠標移開功能,它不能被通過hoverIntent調用。

現在我知道我能做到......

$('something').hoverIntent(function() { }, something); 

something(); 

但是,如果我想要的是可能我想知道?

感謝

+2

「命名匿名函數」是沒有意義的:P – BoltClock 2010-12-09 00:30:28

+0

「命名匿名函數」 :) =>「命名函數沒有名字」 – karim79 2010-12-09 00:30:46

回答

2

不幸的是有沒有除了一個名爲功能的方式,而不是用插件是如何構成的?這不是存儲在任何方式的訪問後,纔到插件的關閉。

它被設置在這裏:

$.fn.hoverIntent = function(f, g) { 
    // default configuration options 
    var cfg = { 
     sensitivity: 7, 
     interval: 100, 
     timeout: 0 
    }; 
    // override configuration options with user supplied object 
    cfg = $.extend(cfg, g ? { 
     over: f, 
     out: g 
    } : f); 

...那麼之後所有參考了cfg對象,它是唯一的插件裏面訪問。如果你想更改插件並通過.data()存儲該cfg對象,例如,你可以,但如果沒有辦法訪問或觸發任何匿名處理程序。

相關問題