jQuery 的運行機制(How jQuery Works)

 

linkjQuery: 基礎知識

這是一個基本的教程,旨在幫助您開始使用jQuery,如果你還沒有設置一個測試頁面,通過創建下面的HTML頁面開始:



jQuery <script src=jquery.js></script><script>

// Your code goes here.

</script>

添加和刪除一個HTML類

重要提示:您必須將剩下的jQuery的例子放在ready事件裡面,這樣當文檔準備工作時你的代碼會執行。
另一個常見任務是添加和刪除一個類。 首先,在文檔的標簽中添加一些樣式信息,像這樣:

a.test {
    font-weight: bold;
}

下一步,在腳本中添加 .addClass()聲明:

$( a ).addClass( test );

現在所有的都是粗體的。 刪掉現有的類,用.removeClass():

$( a ).removeClass( test );

特殊效果

jQuery也提供一些提供方便的效果,以幫助您使您的網站中脫穎而出。例如,如果您創建一個click處理函數:


$( a ).click(function( event ) { event.preventDefault(); $( this ).hide( slow ); });



當點擊的時候這個鏈接緩慢的消失。

回調函數

與其他編程語言不同,JavaScript能讓你的函數順利通過在之後執行。一個回調是一個函數,它作為一個參數來傳遞給另一個函數,在它的父函數執行完成後執行該回調函數。
回調函數很特殊因為他們需要耐心等待直到他們的父函數執行完成。與此同時,瀏覽器可以執行其他函數或者做其他工作。 使用回調函數,很重要的一點是知道他們怎麼傳給他們的父函數的。

無參數回調

如果回調沒有參數,你可以這樣傳:

$.get( myhtmlpage.html, myCallBack );

當 $.get() 調用myhtmlpage.html,它會執行myCallBack()函數。 註意:這裡的第二和參數是一個簡單的函數名(但不是作為字符串,沒有括號)

有參數回調

執行帶參數的回調函數可能會很棘手。 錯誤的:

$.get( myhtmlpage.html, myCallBack( param1, param2 ) );

這段函數不會執行。 失敗的原因是代碼會立即執行myCallBack(參數1,參數2),然後將myCallBack()的返回值作為第二個參數傳給為$.get()方法。我們實際上想傳送函數myCallBack()而不是myCallBack(參數1,參數2)的返回值(這可能是也可能不是一個函數)。因此,如何傳送myCallBack()包括它的參數?

正確的: 推遲執行myCallBack()與它的參數,你可以使用一個匿名函數來包裝。註意,這裡使用的function(){。匿名函數隻做瞭一件事情:調用myCallBack(),用參數1和參數2的值。

$.get( myhtmlpage.html, function() {
 
    myCallBack( param1, param2 );
 
});

當$.get()方法完成獲取網頁myhtmlpage.html,它會執行匿名函數,這個匿名函數會執行myCallBack(參數1,參數2)。

 

發佈留言