在頁面中,我們有時候想讓頁面加載的時候有多個JS事件,一般的時候我們會這樣做
window.onload=function(){
alert("aaa");
}
window.onload=function(){
alert("bbb");
}
運行結果並不是我們想要的那樣,一下子彈出 aaa,然后彈出bbb
而只會彈出bbb,好像是后面的覆蓋了前面的JS代碼
如何實現我們的兩個想要的結果呢
window.onload=function(){
a();
b();
}
function a(){
alert("aaa");
}
functiion b(){
alert("bbb")
}
這樣的話會依次的彈出我們想要的結果,原理大家也應該看出來了,這個就是在加載函數中寫入兩個函數,用加載函數來調用這些函數。
對於上面的這種方法完全可以解決編程中的問題,但有時候我們在遇到很大的頁面的時候,這種方法寫起來不是很舒服,而習慣於用jQuery的方法$(document).ready(function(){}),如下
$(document).ready(function(){
alert("aaa");
alert("bbb");
})
運行這段代碼,大家一定可以得到想要的結果。aaa,bbb,是不是感覺很簡單,jQuery最大的作用就是簡化JS,當然這段代碼我們還可以再簡化如下
$(function(){
alert("aaa");
alert("bbb");
})
運行結果還是很上面一樣的。
大家估計也都看到了,window.onload=function(){}和$(function(){})可以火環,但是這個兩個函數的執行時間不同的,前者就是頁面所有的元素加載完畢后執行,而后者是遍歷了所有的DOM節點加載后再執行,相比較而言后者比較‘快’;
切記后者的$符號是代表jQuery,所以必須引入jQuery的庫。
有時候我們用原生的JS中也會出現$符號,但是他們代表的意義是不同的
function $(id){
obj=document.getElementById(id)
return obj;
}
docuement.getElementById("uname").value可簡寫$('uname').value
切記兩者的$不一樣,所有我們在遇到的時候一定要重新聲明
例如我重新聲明jQuery中的$,$在jQuery庫中本身代表jQuery,希望別把你混淆。
var $$=jQuery;
$$(function(){
alert("aaa");
alert("bbb")
})