|
樣式:<style>.red{color:#FF0000}</style>
Html代碼: <div id="a">sdf</div>
jQuery代碼及效果 $(function(){
$("#a").hover(function(){$(this).addClass("red");},
function(){ $(this).removeClass("red");
});
})最終效果是當鼠標移到id為a的層上時圖層增加一個red樣式,離開層時移出red樣式
toggle(Function, Function) 當匹配元素第一次被點擊時觸發第一個函數,當第二次被點擊時觸發第二個函數
樣式:<style>.red{color:#FF0000}</style>
Html代碼: <div id="a">sdf</div>
jQuery代碼及效果 $(function(){
$("#a"). toggle (function(){$(this).addClass("red");},
function(){ $(this).removeClass("red");
});
})最終效果是當鼠標點擊id為a的層上時圖層增加一個red樣式,離開層時移出red樣式
bind(type, fn) 用戶將一個事件和觸發事件的方式綁定到匹配對象上。
trigger(type) 用戶觸發type形式的事件。$("p").trigger("click")
還有:unbind() unbind(type) unbind(type, fn)
Dynamic event(Function) 綁定和取消綁定提供函數的簡捷方式
例: $("#a").bind("click",function() {
$(this).addClass("red");
})也可以這樣寫: $("#a").click(function() {
$(this).addClass("red");
});
最終效果是當鼠標點擊id為a的層上時圖層增加一個red樣式,
jQuery提供的函數
用于browers事件
error(fn) load(fn) unload(fn) resize(fn) scroll(fn)
用于form事件
change(fn) select(fn) submit(fn)
用于keyboard事件
keydown(fn) keypress(fn) keyup(fn)
用于mouse事件
click(fn) dblclick(fn) mousedown(fn) mousemove(fn)
mouseout(fn) mouseover(fn) mouseup(fn)
用于UI事件
blur(fn) focus(fn)
以上事件的擴展再擴展為5類
舉例,click(fn) 擴展 click() unclick() oneclick(fn) unclick(fn)
click(fn):增加一個點擊時觸發某函數的事件
click():可以在其他事件中執行匹配對象的click事件。
unclick ():不執行匹配對象的click事件。
oneclick(fn):只增加可以執行一次的click事件。
unclick (fn):增加一個點擊時不觸發某函數的事件。
上面列舉的用于browers、form、keyboard、mouse、UI的事件都可以按以上方法擴展。
七:Ajax支持
通用方式:
$.ajax(prop) 通過一個ajax請求,回去遠程數據,prop是一個hash表,它可以傳遞的key/value有以下幾種。
(String)type:數據傳遞方式(get或post)。
((String)url:數據請求頁面的url
((String)data:傳遞數據的參數字符串,只適合post方式
((String)dataType:期待數據返回的數據格式(例如 "xml", "html", "script",或 "json")
((Boolean)ifModified: 當最后一次請求的相應有變化是才成功返回,默認值是false
((Number)timeout:設置時間延遲請求的時間。可以參考$.ajaxTimeout
((Boolean)global:是否為當前請求觸發ajax全局事件,默認為true
((Function)error:當請求失敗時觸發的函數。
((Function)success:當請求成功時觸發函數
((Function)complete:當請求完成后出發函數
jQuery代碼及說明
success:function(msg){
$(div"#a").html(msg);
}
});將ajax.htm返回的內容作為id為a的div內容 $.ajax({ url: "ajax.ASPx",
type:"get",
dataType:"html",
data: "name=John&location=Boston",
success:function(msg){
$("#a").html(msg);
}
});
用get方式向ajax.ASPx頁面傳參數,并將返回內容負給id為a的對象。
$.ajaxTimeout(time) 設置請求結束時間
$.ajaxTimeout( 5000 )
其它簡化方式:
$.get(url, params, callback) 用get方式向遠程頁面傳遞參數,請求完成后處理函數,除了url外,其它參數任意選擇!
$.get( "ajax.htm" , function(data){ $("#a").html(data) })$.get( "ajax.ASP",{ name: "young", age: "25" },
function(data){ alert("Data Loaded: " + data); }
) $.getIfModified(url, params, callback) 用get方式向遠程頁面傳遞參數,從最后一次請求后如果數據有變化才作出響應,執行函數callback
$.getJSON(url, params, callback) 用get方式向遠程json對象傳遞參數,請求完成后處理函數callback。
$.getScript(url, callback) 用get方式載入并運行一個遠程Javascript文件。請求完成后處理函數callback。
$.post(url, params, callback) 用post方式向遠程頁面傳遞參數,請求完成后處理函數callback
load(url, params, callback) 載入一個遠程文件并載入頁面DOM中,并執行函數callback $("#a").load("ajax.htm", function() { alert("load is done"); } );向ajax.htm頁面發出請求,將返回結果裝入id為a的內容中,然后再執行函數callback。
loadIfModified(url, params, callback) 用get方式向遠程頁面傳遞參數,從最后一次請求后如果數據有變化才作出響應,將返回結果載入頁面DOM中,并執行函數callback
ajaxStart(callback) 當ajax請求發生錯誤是時執行函數callback
ajaxComplete(callback) 當ajax請求完成時執行函數callback
ajaxError(callback) 當ajax請求發生錯誤時執行函數callback
ajaxStop(callback) 當ajax請求停止時執行函數callback
ajaxSuccess(callback) 當ajax請求成功時執行函數callback
八:jQuery插件
隨著jQuery的廣泛使用,已經出現了大量jQuery插件,如thickbox,iFX,jQuery-googleMap等,簡單的引用這些源文件就可以方便的使用這些插件。這里我簡單的介紹一些網址供大家參考,這些網站頭提供了大量的demo,并且使用及其簡單,及時E文不好,也能快速掌握!
http://jquery.com/plugins 官方推薦
http://interface.eyecon.ro/demos 效果超級棒,使用更簡單,一定有你喜歡的!
http://www.dyve.NET/jquery/
http://bassistance.de/jquery-plugins
還有其它很多插件,大家可以google以下,如果大家發現好的了,可以留言共享以下!
――――――――――――――――――――――――――――――――――――――――――――――
至此jQuery已經介紹完畢,并合并整理提供給大家 下載 ,更多詳細的使用請大家參考官方網站,下面我再推薦一些jQuery的學習網站方便大家更好的掌握這項工具!
http://keel.sike.googlepages.com/jQuery_getting_started.html 中文入門介紹,Keel翻譯
http://jquery.com/api jquery提供全部基本方法的介紹及demo,方便大家查詢!
JavaScript技術:jQuery使用手冊之 事件處理,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。