2011-02-04 129 views
1

我已經遵循了大多數初學者教程,但現在我正在嘗試做一個乾淨的jQuery插件。我的目標(現在)是當用戶點擊鏈接(使用插件)時顯示警報。綁定點擊jQuery插件

我的代碼來調用該插件:

//custom.js 
$(document).ready(function(){  
    $("a").click(function(event){ 
    alert("TEST1"); 
    myPlugin(); 
    event.preventDefault(); 
    }); 
}); 

和我的插件代碼是:

//myPlugin.jquery.js 
(function($){ 
    $.fn.myPlugin = function() { 

    alert("TEST2"); 

    }; 
})(jQuery); 

TEST1被顯示,但不TEST2!

怎麼了?

非常感謝您的幫助!

+0

這真的不是如何jQuery插件的工作。他們需要在jQuery對象**上調用**,如下所示:`$('a')。myPlugin();`。 – 2011-02-04 17:40:14

回答

2

因爲您使用的是$.fn.myPlugin,這意味着您需要使用$(this).myPlugin()來調用該插件。

$(document).ready(function(){  
    $("a").click(function(event){ 
    alert("TEST1"); 
    $(this).myPlugin(); 
    event.preventDefault(); 
    }); 
}); 

http://jsfiddle.net/3nf5b/

+0

它的工作原理!謝謝 ;) – poiuytrez 2011-02-04 18:39:26

0

您的插件擴展了jQuery對象,因此爲了調用它,您需要一個jQuery對象。將您的電話從myPlugin();更改爲$(this).myPlugin();