jQuery常用操作方法及常用函數總結
一篇 jQuery 常用方法及函數的文章留存?zhèn)渫?/p>
jQuery 常見操作實現(xiàn)方式
$("標簽名") //取html元素 document.getElementsByTagName("")
$("#ID") //取單個控件document.getElementById("")
$("div #ID") //取某個控件中 控件
$("#ID #ID") // 通過控件ID取其中的控件
$("標簽.class樣式名") //通過class來取控件
$("#ID").val(); //取value值
$("#ID").val(""); //賦值
$("#ID").hide(); //隱藏
$("#ID").show(); //顯示
$("#ID").text(); //相當于取innerText
$("#ID").text(""); //相當于innerText=""
$("#ID").html(); //相當于取innerHTML
$("#ID").html(""); //相當于innerHTML=""
$("#ID").css("屬性","值") //添加CSS樣式
$("form#表單id").find("#所找控件id").end() //遍歷表單
$("#ID").load("*.html") //載入一個文件
例如:
$("form#frmMain").find("#ne").css("border", "1px solid #0f0").end() // end()返回表單 .find("#chenes").css("border-top","3px dotted #00f").end() $.ajax({ url: "Result.aspx", //數據請求頁面的url type:"get", //數據傳遞方式(get或post) dataType:"html", //期待數據返回的數據格式(例如 "xml", "html", "script",或 "json") data: "chen=h", //傳遞數據的參數字符串,只適合get方式 timeout:3000, //設置時間延遲請求的時間 success:function(msg)//當請求成功時觸發(fā)函數 { $("#stats").text(msg); }, error:function(msg) //當請求失敗時觸發(fā)的函數 { $("#stats").text(msg); } }); $(document).ready(function(){}); $("#description").mouseover(function(){}); //ajax方法 $.get( "Result.aspx", //數據請求頁面的url { chen: "測試",age:"25"}, //傳遞數據的參數字符串 function(data){ alert("Data Loaded: " + data); } //觸發(fā)后的函數 ); }); }); //取得下拉選單的選取值 $(#testSelect option:selected').text(); //取文本值 或$("#testSelect").find('option:selected').text(); 或$("#testSelect").val();
------
jQuery中常用的函數方法總結
事件處理
ready(fn)
代碼:
$(document).ready(function(){ // Your code here... });
作用:它可以極大地提高web應用程序的響應速度。通過使用這個方法,可以在DOM載入就緒能夠讀取并操縱時立即調用你所綁定的函數,而99.99%的JavaScript函數都需要在那一刻執(zhí)行。
bind(type,[data],fn)
代碼:
$("p").bind("click", function(){ alert( $(this).text() ); });
作用:為每一個匹配元素的特定事件(像click)綁定一個事件處理器函數。起到事件監(jiān)聽的作用。
toggle(fn,fn)
代碼:
$("td").toggle( function () { $(this).addClass("selected"); }, function () { $(this).removeClass("selected"); } );
作用:每次點擊時切換要調用的函數。如果點擊了一個匹配的元素,則觸發(fā)指定的第一個函數,當再次點擊同一元素時,則觸發(fā)指定的第二個函數。挺有趣的一個函數,在動態(tài)實現(xiàn)某些功能的時候可能會用到。
(像click(),focus(),keydown()這樣的事件這里就不提了,那些都是開發(fā)中比較常用到的。)
外觀效果
addClass(class)和removeClass(class)
代碼:
$(".stripe tr").mouseover(function(){ $(this).addClass("over");}).mouseout(function(){ $(this).removeClass("over");}) });
也可以寫成:
$(".stripe tr").mouseover(function() { $(this).addClass("over") }); $(".stripe tr").mouseout(function() { $(this).removeClass("over") });
作用:為指定的元素添加或移除樣式,從而實現(xiàn)動態(tài)的樣式效果,上面的實例中實現(xiàn)鼠標移動雙色表格的代碼。
css(name,value)
代碼:
$("p").css("color","red");
作用:很簡單,就是在匹配的元素中,設置一個樣式屬性的值。這個個人感覺和上面的addClass(class)有點類似。
slide(),hide(),fadeIn(), fadeout(), slideUp() ,slideDown()
代碼:
$("#btnShow").bind("click",function(event){ $("#divMsg").show() }); $("#btnHide").bind("click",function(evnet){ $("#divMsg").hide() });
作用:jQuery中提供的比較常用的幾個動態(tài)效果的函數。還可以添加參數:show(speed,[callback])以優(yōu)雅的動畫顯示所有匹配的元素,并在顯示完成后可選地觸發(fā)一個回調函數。
animate(params[,duration[,easing[,callback]]])
作用:制作動畫效果用到的函數,功能非常的強大,可以連續(xù)使用此函數。
查找篩選
map(callback)
HTML 代碼:
<p><b>Values: </b></p> <form> <input type="text" name="name" value="John"/> <input type="text" name="password" value="password"/> <input type="text" name="url" value="http://www.fufuok.com/> </form>
jQuery 代碼:
$("p").append( $("input").map(function(){ return $(this).val(); }).get().join(", ") );
結果:
[ <p>John, password, http://www.fufuok.com/</p> ]
作用:將一組元素轉換成其他數組(不論是否是元素數組)你可以用這個函數來建立一個列表,不論是值、屬性還是CSS樣式,或者其他特別形式。這都可以用'$.map()'來方便的建立。
find(expr)
HTML 代碼:
<p><span>Hello</span>, how are you?</p>
jQuery 代碼:
$("p").find("span")
結果:
[ <span>Hello</span> ]
作用:搜索所有與指定表達式匹配的元素。這個函數是找出正在處理的元素的后代元素的好方法。
文檔處理
attr(key,value)
HTML 代碼:
<img/><img/>
jQuery 代碼:
$("img").attr("src","test.jpg");
作用:取得或設置匹配元素的屬性值。通過這個方法可以方便地從第一個匹配元素中獲取一個屬性的值。如果元素沒有相應屬性,則返回 undefined 。在控制HTML標記上是必備的工具。
html()/html(val)
HTML 代碼:
<div><p>Hello</p></div>
jQuery 代碼:
$("div").html();
結果:
<p>Hello</p>
作用:取得或設置匹配元素的html內容,同類型的方法還有text()和val()。前者是取得所有匹配元素的內容。,后者是獲得匹配元素的當前值。三者有相似的地方常用在內容的操作上。
wrap(html)
HTML 代碼:
<p>Test Paragraph.</p>
jQuery 代碼:
$("p").wrap("<div class='wrap'></div>");
結果:
<div class="wrap"><p>Test Paragraph.</p></div>
作用:把所有匹配的元素用其他元素的結構化標記包裹起來。
這種包裝對于在文檔中插入額外的結構化標記最有用,而且它不會破壞原始文檔的語義品質。 可以靈活的修改我們的DOM。
empty()
HTML 代碼:
<p>Hello, <span>Person</span> <a href="#">and person</a></p>
jQuery 代碼:
$("p").empty();
結果:
<p></p>
作用:刪除匹配的元素集合中所有的子節(jié)點。
Ajax處理
load(url,[data],[callback])
url (String) : 待裝入 HTML 網頁網址。
data (Map) : (可選) 發(fā)送至服務器的 key/value 數據。
callback (Callback) : (可選) 載入成功時回調函數。
代碼:
$("#feeds").load("feeds.aspx", {limit: 25}, function(){ alert("The last 25 entries in the feed have been loaded"); });
作用:載入遠程 HTML 文件代碼并插入至 DOM 中。這也是Jquery操作Ajax最常用最有效的方法。
serialize()
HTML 代碼:
<p id="results"><b>Results: </b> </p> <form> <select name="single"> <option>Single</option> <option>Single2</option> </select> <select name="multiple" multiple="multiple"> <option selected="selected">Multiple</option> <option>Multiple2</option> <option selected="selected">Multiple3</option> </select><br/> <input type="checkbox" name="check" value="check1"/> check1 <input type="checkbox" name="check" value="check2" checked="checked"/> check2 <input type="radio" name="radio" value="radio1" checked="checked"/> radio1 <input type="radio" name="radio" value="radio2"/> radio2 </form>
jQuery 代碼:
$("#results").append( "<tt>" + $("form").serialize() + "</tt>" );
作用:序列化表格內容為字符串。用于 Ajax 請求。
工具
jQuery.each(obj,callback)
代碼:
$.each( [0,1,2], function(i, n){ alert( "Item #" + i + ": " + n ); });//遍歷數組 $.each( { name: "John", lang: "JS" }, function(i, n){ alert( "Name: " + i + ", Value: " + n );//遍歷對象 });
作用:通用例遍方法,可用于例遍對象和數組。
jQuery.makeArray(obj)
HTML 代碼:
<div>First</div><div>Second</div><div>Third</div><div>Fourth</div>
jQuery 代碼:
var arr = jQuery.makeArray(document.getElementsByTagName("div"));
結果:
Fourth
Third
Second
First
作用:將類數組對象轉換為數組對象。使我們可以在數組和對象之間靈活的轉換。
jQuery.trim(str)
作用:這個大家應該很熟悉,就是去掉字符串起始和結尾的空格。
相關文章
40個有創(chuàng)意的jQuery圖片、內容滑動及彈出插件收藏集之一
在網頁的首頁或圖片專題頁面很多地方都會用到圖片滑動插件來循環(huán)切換多張圖片,并且用戶可以點擊左右按鈕來切換圖片。相信大家都知道jQuery是最優(yōu)秀的Javascript框架之一2011-12-12LazyForm jQuery plugin 定制您的CheckBox Radio和Select
LazyForm jQuery plugin 定制您的CheckBox Radio和Select ,需要的朋友可以參考下。2009-10-10