Javascript jQuery:简单插件不起作用

Javascript jQuery:简单插件不起作用,javascript,jquery,Javascript,Jquery,我正在尝试用jQuery创建一个插件。 这是一个非常基本的插件(plugin.js) 这是一个文件(ext.js),它调用plugin.js (function ( $ ) { $.fn.testPlugin= function() { alert('test'); }( jQuery )); $(document).ready(function(){ $('p').testPlugin(); }; 在HTML页面中,我包括了上面的文件和jQuery库(jQuery.js)

我正在尝试用jQuery创建一个插件。 这是一个非常基本的插件(plugin.js

这是一个文件(ext.js),它调用plugin.js

(function ( $ ) { 
$.fn.testPlugin= function() {

  alert('test');

}( jQuery ));
$(document).ready(function(){

$('p').testPlugin();

};
在HTML页面中,我包括了上面的文件和jQuery库(jQuery.js


不幸的是,该插件没有按预期工作

alert('test');  });
这不是太过分了吗

当我尝试测试它时,它返回一个语法错误

将其移动到ext.js:

$(document).ready(function(){

    $('p').testPlugin();

});

代码中有语法错误。这就是它不起作用的原因。在
警报('test')下面的行中有一个额外的

你的插件语法应该是

(function ($) {
    $.fn.testPlugin = function () {

        alert('test');
    };

}(jQuery));

工作

很好,这个简单的示例将工作(在我删除
之后)
,正如Tibzon和Wojtek所提到的)

$.fn.testPlugin=function(){alert('test');};
$('p').testPlugin()

代码中有一些小错误。纠正了它们及其工作罚款:

第一部分,括号放错了地方。以下是正确的第一部分:

(function ( $ ) { 
    $.fn.testPlugin= function() {
    alert('test');
}})( jQuery );
第二部分:

$(document).ready(function(){
    $('p').testPlugin();
});

简单易用:)

你在HTML中的某个地方确实有段落元素吗?是的,我在HTML中有p元素。@AlienBishop即使没有
元素,插件也会被调用,因为jQuery仍然会构造一个(空的)对象。@AlienBishop不需要在HTML中包含该元素。保持开发人员控制台打开!它给出了为什么代码在毫秒内不能工作的答案,使它比Stackoverflow更快!嗨,Tibzon…我纠正了插件语法,但我有同样的问题。插件不工作。我插入了一把小提琴来演示。它在那里按预期工作。可能您应该重新检查导入
js
文件的位置。有没有在正确的地方?
$(document).ready(function(){
    $('p').testPlugin();
});