jquery插件扩展函数可以有两种写法吗 大家帮忙看下,例如添加一个Scroll功能

一种是(function($){$.extend(Scroll:function(){具体代码});})(jQuery)另一种是$(document).ready(fun... 一种是 (function($){
$.extend(
Scroll:function(){

具体代码
});
})(jQuery)

另一种是
$(document).ready(function(){
jQuery.Scroll=function(){
具体代码
});

}

)
展开
 我来答
阿刚炖蛋
2016-11-17 · TA获得超过3004个赞
知道大有可为答主
回答量:1789
采纳率:92%
帮助的人:998万
展开全部

你好!


根据《jQuery高级编程》的描述,jQuery插件开发方式主要有三种:

  1. 通过$.extend()来扩展jQuery

  2. 通过$.fn 向jQuery添加新的方法

  3. 通过$.widget()应用jQuery UI的部件工厂方式创建


本质都是函数,或是全局函数,或是某些特定对象的函数;


第一种可以理解为给jQuery定义一个全局函数/方法,谁都可以使用;

第二种是为$.fn添加方法,一般通过这种方式来开发自己的插件,这种是可以通过使用jQuery的强大的选择器,将内部逻辑作用于所选择的元素上的;

第三种是用来开发更高级jQuery部件的;


希望对你有帮助!

luocongjay
2016-11-17 · TA获得超过949个赞
知道小有建树答主
回答量:1382
采纳率:33%
帮助的人:441万
展开全部
第二种在$(document).ready(function(){})外面写不生效。
追问
也就是说  只能在这个$(document).ready(function(){} 内部能用,如果外面有其他代码,用$.Scroll是不行的,对吗?
追答

是的,如果第二种情况下外面调用$.Scroll是不行。

还有一种方法可以外部调用,这种基本上写jquery插件比较多了。如下:

$(function(){
    $.fn.Scroll=function(){
      alert('s12122');
    }
});
$("body").Scroll();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式