jQuery(function($){...})中的 “$” 是什么意思???

jQuery(function($){//alert($);varindex=0;varmaximg=5;//$('<divid="flow"></div>').appe... jQuery(function($){
//alert($);
var index = 0;
var maximg = 5;
//$('<div id="flow"></div>').appendTo("#myjQuery");

//滑动导航改变内容
$("#myjQueryNav li").hover(function(){
if(MyTime){
clearInterval(MyTime);
}
index = $("#myjQueryNav li").index(this);
MyTime = setTimeout(function(){
ShowjQueryFlash(index);
$('#myjQueryContent').stop();
} , 400);

}, function(){
clearInterval(MyTime);
MyTime = setInterval(function(){
ShowjQueryFlash(index);
index++;
if(index==maximg){index=0;}
} , 3000);
});
//滑入 停止动画,滑出开始动画.
$('#myjQueryContent').hover(function(){
if(MyTime){
clearInterval(MyTime);
}
},function(){
MyTime = setInterval(function(){
ShowjQueryFlash(index);
index++;
if(index==maximg){index=0;}
} , 3000);
});
//自动播放
var MyTime = setInterval(function(){
ShowjQueryFlash(index);
index++;
if(index==maximg){index=0;}
} , 3000);
});
function ShowjQueryFlash(i) {
$("#myjQueryContent div").eq(i).animate({opacity: 1},1000).css({"z-index": "1"}).siblings().animate({opacity: 0},1000).css({"z-index": "0"});
//$("#flow").animate({ left: 652+(i*76) +"px"}, 300 ); //滑块滑动
$("#myjQueryNav li").eq(i).addClass("current").siblings().removeClass("current");
}
展开
 我来答
郑郑某
推荐于2017-09-01 · TA获得超过574个赞
知道小有建树答主
回答量:98
采纳率:0%
帮助的人:113万
展开全部

实际上,jquery只是js写出来的对象,或者称工厂(产生新的对象)

jquery源码中的定义可以理解为 var jQuery = $ = function($){ } (jQuery)

即,function参数为形参,function后的括号内的内容为实参,实参赋值给形参

在你给出的例子中,可以断言肯定已经引入了jquery,故其实$已经被赋值为jQuery对象,因此这个函数是将jquery作为参数传进函数内部,作为jquery的代名词。

可能你要问为什么要这么做,直接用$不是很好么?这有一种可能是不止引入了jquery,还引入了prototype(也是使用$作为工厂符号)之类的,为防混淆如此做。

这样做其实是因为js编程中的封装,防止变量污染其他作用域,使得$只作用于这个函数。

但我感觉这样写的不是很好,如果换成

jQuery(function(jQuery){
        var $ = jQuery;
//alert($);
var index = 0;
var maximg = 5;
……
}

这样会更好点,也更好理解。

可能我语言组织的不是很好,见谅一下,建议去参考《javascript 高级程序设计》

追问

第二行加上这个alert($);

然后怎么输出的是这个???

追答
正如我所说,$表示的是可以是jQuery,也可以是其他对象,这要根据上下文而定。
$仅仅是一个符号,只不过被赋予特殊的含义而已
灰机哥系列416
2014-09-03 · TA获得超过178个赞
知道答主
回答量:129
采纳率:0%
帮助的人:173万
展开全部
等同于:
$(document).ready(function(){
//你写的代码

})
请采纳答案,支持我一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式