首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery插件创作

jQuery插件创作
EN

Stack Overflow用户
提问于 2013-03-14 02:35:02
回答 2查看 221关注 0票数 2

你知道为什么这个基本的例子不起作用吗?

http://jsfiddle.net/Kq6pz/

代码语言:javascript
复制
(function( $ ){

  $.fn.testPlugin = function( options ) {  
        alert('hi');
  };
})( jQuery );

$.testPlugin();
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-14 02:37:36

因为您将插件添加到了fn名称空间,而不是$名称空间。因此,$().testPlugin()可以工作,但$.testPlugin()不能。

如果你想污染$命名空间,你可以这样做:

代码语言:javascript
复制
(function( $ ){

  $.testPlugin = function( options ) {  
        alert('hi');
  };
})( jQuery );

$.testPlugin();

我遵循的经验法则是:当$.与DOM无关(如ajax)时使用它,而当$.fn.操作通过选择器抓取的元素时(如DOM/XML元素)。

票数 5
EN

Stack Overflow用户

发布于 2013-03-14 02:36:49

你需要一个选择器:

代码语言:javascript
复制
$(document).testPlugin();
$(window).testPlugin();

演示:http://jsfiddle.net/dirtyd77/Kq6pz/1/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15393661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档