5 回答
TA贡献1809条经验 获得超8个赞
你是要写个插件吧?!!
试试改成这样:
1 2 3 4 5 6 7 8 9 10 11 | <script> (function($){ $.render = function(jq){ alert("这里是jquery代码"); } })(jQuery);
$(function(){ $.render(null); }); </script> |
TA贡献1757条经验 获得超8个赞
(function(){})表示一个匿名函数。function(arg){...}定义了一个参数为arg的匿名函数,然后使用(function(arg){...})(param)来调用这个匿名函数。其中param是传入这个匿名函数的参数。
扩展资料:
需要注意与$(function(){})的区别:$(function(){}) 是 $(document).ready(function(){}) 的简写,用来在DOM加载完成之后执行一系列预先定义好的函数。
jQuery的模块可以分为3部分:入口模块、底层支持模块和功能模块。
在构造jQuery对象模块中,如果在调用构造函数jQuery()创建jQuery对象时传入了选择器表达式,则会调用选择器Sizzle(一款纯JavaScript实现的CSS选择器引擎,用于查找与选择器表达式匹配的元素集合)遍历文档,查找与之匹配的DOM元素,并创建一个包含了这些DOM元素引用的jQuery对象。
TA贡献1845条经验 获得超8个赞
你说的是不是 $('xx').xxx(function(){});啊????????
这个是回调方法 当做参数传入后 会在相应的事件触发后调用
你说的是 $(function(){});的话
这个是简写
1 | $( function (){});=$(document).ready( function (){}); |
如果你指的是(function(){})(); 的话 这个可以理解为一个闭包 是一个匿名方法的调用 以保证方法内的变量不与外界冲突,最后的()代表这个匿名方法立即执行。
示例如下:
12345678 | <script type= "text/javascript" > var a =2; ( function (a){ a=100 alert(a); })(a); alert(a) </script> |
虽然传入了a但是在方法内部对a进行复制一类的操作是无法改变a的。保证包内外隔离。
内部变量和外部变量被隔离开。
再比如将a这个变量传给匿名函数,而匿名函数使用的参数名却是x。jquery很多插件都是这么玩来避免$这个变量发生冲突。
1234567 | <script type= "text/javascript" > var a =2; ( function (x){ alert(x); })(a); alert(a) </script> |
TA贡献1860条经验 获得超9个赞
(function(){})表示一个匿名函数。function(arg){...}定义了一个参数为arg的匿名函数,然后使用(function(arg){...})(param)来调用这个匿名函数。其中param是传入这个匿名函数的参数。
需要注意与$(function(){})的区别:$(function(){}) 是 $(document).ready(function(){}) 的简写,用来在DOM加载完成之后执行一系列预先定义好的函数。
- 5 回答
- 0 关注
- 1265 浏览
添加回答
举报