Jquery.size()问题和自动执行闭包问题

Jquery.size()问题和自动执行闭包问题,jquery,Jquery,我面临jquery的一个问题,有一个问题。请回答(我是jquery的新手) 问题1: 在此html结构中: <div id="main"> <div id="abc" width="78px" value="no vla">xyyyyyyyy</div> <div id="ppp" width="78px">zzzzzzzzzzzzzzzzzzzzz</div> </div> <scri

我面临jquery的一个问题,有一个问题。请回答(我是jquery的新手)

问题1:

在此html结构中:

<div id="main">
        <div id="abc" width="78px" value="no vla">xyyyyyyyy</div>
        <div id="ppp" width="78px">zzzzzzzzzzzzzzzzzzzzz</div>
</div>
<script src="jquery.js" type="text/javascript">
</script>

<script type="text/javascript">


$.fn.hilight = function(a) {

  alert($('div').size());
};

alert('before');

$('').hilight(89);

</script>

XYYYYYYY
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
$.fn.hilight=函数(a){
警报($('div').size());
};
警惕(“之前”);
$('').hilight(89);
$('div').size()输出显示为4。但这里有3个div。我错过了什么?我检查了firebug中的Div标签,在那里发现了3个Div。请帮助:-(

问题2:

自动执行闭包是如何工作的?我的意思是,当我们写:

函数(A){document.write(A);}(jQuery)


jQuery对象是否传递到函数中?如果我写的是“abcd”而不是jQuery,那么参数A将得到值“abcd”。在这种情况下,第二个()将值传递给第一个()(我的意思是函数)……与C/C++的概念相匹配?这里没有返回,所以我有点困惑。

关于你的第二个问题:

与其说它是一个自动执行的闭包,不如说它是一个函数声明和调用

(function(A){document.write(A);})(jQuery);
可细分为

var f = function(A){document.write(A);}
f(jQuery);

同一件事。

你必须在页面上有更多的东西,因为它提醒你3:你可以在这里看到:当我在FixBug中进行三次检查时,我无法在我的PC中解决这个问题…………(无论如何,我认为这只是我的PC的一个bug,所以我继续假设什么都没发生。第二个问题呢?忘了谢谢……谢谢CLAM:)