jQuery(selector)
jQuery 的核心功能都是通過這個函數實現的。 jQuery中的一切都基于這個函數,或者說都是在以某種方式使用這個函數。這個函數最基本的用法就是向它傳遞一個表達式(通常由 CSS 選擇器組成),然后根據這個表達式來查找所有匹配的元素。
括號里可傳入:
1、function?
2、css選擇器?
3、原生DOM對象?
4、數組、類數組
5、空值
6、其他
有索引值的元素傳入括號,jQuery會將其按照索引值包裝成一個對象然后返回出來。
?
1、$(function(){})
等價于$(document).ready(function(){})?頁面加載事件,當dom文檔解析完成后,即dom文檔樹上的基本元素加載完才執行。
因此可以把該代碼提升至head部分,會在解析完dom元素后執行而不報錯。但推薦放在dom文檔底部更快,當其解析完才算dom文檔解析完畢。
//頁面所有東西加載完才執行$("window").load(function(){console.log("3");});//基本元素加載完就執行 $(document).ready(function(){console.log("1"); });$(function(){console.log("2"); });
//輸出結果為:1,2,3
?
2、css選擇器
3、原生DOM對象?
1 <body> 2 <ul> 3 <li></li> 4 <li></li> 5 <li></li> 6 <li></li> 7 </ul> 8 </body> 9 10 <script> 11 console.log($(document.getElementsByTagName("li")));}) 12 </script>
獲取dom對象,將其按照索引值包裝成了jQuery的包裝集。
在后面添加索引值,即可使用dom的方法:$(document.getElementsByTagName("li"))[0].innerText?
?
4、數組、類數組
<script> console.log($(["a","b","c"])); console.log($({0:"a",1:"b",length:2})); </script>
?
5、空值
<script>console.log($(null));console.log($(false));console.log($(""));console.log($(undefined));console.log($());console.log($(NaN)); </script>
返回一個空的jQuery對象
?
6、其他
沒有索引的數字、字符串以及對象等等,會傳入jQuery對象的第0位。
<script>console.log($(123));console.log($(true));console.log($({0:1,1:1,2:2})); </script>
?