1.$(document).ready();的几种简略写法
在jquery中$(document).ready();方法经常用到,有以下集中简略写法:
1.最常用也是最标准的
$(document).ready(function(){
});
可以简写为 $().ready(function(){ });
2.是上面的简写:
$(function(){
})
很奇怪?为什么能这样?不是判断document对象是否 ready然后才执行函数的么?document哪去了?我们看下jQuery的源代码:
// jQuery的构造函数;
var jQuery = function( a, c ) {
// $(document).ready()的简写形式,只有在$(function(){...})下才会执行;
if ( a && typeof a == "function" && jQuery.fn.ready ) return jQuery(document).ready(a);
// 确保参数a非空,默认值为document;
a = a || jQuery.context || document;
耶!找到了,我们再看下$这个方法的参数
$(selector,context)
第一个为选择器,第二个是容器
如果不填就默认为document
3.好吧!我承认这个方式是来打酱油的
jQuery(document).ready(function(){
});
4.
jQuery(function($){
alert($("#ready1").html());
});
第四种方式和第三种没有区别啊?各位客官仔细看!我们给functIOn传了一个参数$
第四种方式一般用在处理jQuery的$和别的库冲突的时候用的,通过jQuery.noConflict()这个方法,我们就可以直接在代码中通过jQuery来代替$来使用,但又习惯了使用$怎么办?看下面的代码:
jQuery.noConflict();
jQuery(function($){
alert($("#ready1").html()); //我们又能用上$符号了
});
2.jquery中单引号和双引号的区别
在javascript 以及jquery中单引号和双引号没有任何区别,但是在需要嵌套引号时,用单引号和双引号共同嵌套完成表达式。 例如: <input type="button" onclick="alert("1")">-------------------不正确
<input type="button" onclick="alert('1')">-------------------正确
如果是两层的引号,单双引号没有差别。但是有3层的时候,还是有差别的。双引号必须在最外层,否则就出错。
例如:
'<a onclick="Look(\''+row.path+'\')" href="#">‘ 对
"<a onclick=\"Look('" + row.path + "')\" href=\"#\">" 对
'<a onclick="Look(\''+row.path+'”)" href="#">‘ 错