前面的話
在深入了解jQuery的各個細節之前,需要對jQuery的設計思想有一個大致的了解。在遇到問題時, 知道應該使用jQuery的哪一個功能,然后迅速從手冊中找到具體的用法。本文將詳細介紹jQuery的設計思想
選擇元素
jQuery的基本設計思想和主要用法,就是"選擇某個網頁元素,然后對其進行某種操作"。這是它區別于其他javascript庫的根本特點
使用jQuery的第一步,往往就是將一個選擇表達式,放進構造函數jQuery()(簡寫為$),然后得到被選中的元素
【模擬CSS選擇元素】
$(document) //選擇整個文檔對象$('#myId') //選擇ID為myId的網頁元素$('div.myClass') // 選擇class為myClass的div元素$('input[name=first]') // 選擇name屬性等于first的input元素【特有表達式選擇】
$('a:first') //選擇網頁中第一個a元素$('tr:odd') //選擇表格的奇數行$('#myForm :input') // 選擇表單中的input元素$('div:visible') //選擇可見的div元素$('div:gt(2)') // 選擇所有的div元素,除了前三個$('div:animated') // 選擇當前處于動畫狀態的div元素【多種篩選方法】
$('div').has('p'); // 選擇包含p元素的div元素$('div').not('.myClass'); //選擇class不等于myClass的div元素$('div').filter('.myClass'); //選擇class等于myClass的div元素$('div').first(); //選擇第1個div元素$('div').eq(5); //選擇第6個div元素寫法
【方法函數化】
在原生javascript中,賦值操作符用的比較多。而在jQuery中,多使用函數傳參的方式,也就是方法函數化
//原生window.onload = function(){};//jQuery$(function(){});//原生div.onclick = function(){};//jQuerydiv.click(function(){});//原生div.innerHTML = '123';//jQuerydiv.html('123');【鏈式操作】
選中網頁元素以后,可以對它進行一系列操作,并且所有操作可以連接在一起,以鏈條的形式寫出來
$('div').find('h3').eq(2).html('Hello');
分解開來,就是下面這樣:
$('div') //找到div元素.find('h3') //選擇其中的h3元素.eq(2) //選擇第3個h3元素.html('Hello'); //將它的內容改為Hello這是jQuery最令人稱道、最方便的特點。它的原理在于每一步的jQuery操作,返回的都是一個jQuery對象,所以不同操作可以連在一起
jQuery還提供了.end()方法,使得結果集可以后退一步
$('div').find('h3').eq(2).html('Hello').end() //退回到選中所有的h3元素的那一步.eq(0) //選中第一個h3元素.html('World'); //將它的內容改為World【取賦值合體】
操作網頁元素,最常見的需求是取得它們的值,或者對它們進行賦值。jQuery使用同一個函數來完成取值(getter)和賦值(setter),即"取值器"與"賦值器"合一。到底是取值還是賦值,由函數的參數決定
$('h1').html(); //html()沒有參數,表示取出h1的值$('h1').html('Hello'); //html()有參數Hello,表示對h1進行賦值常見的取值和賦值函數如下
.html() 取出或設置html內容.text() 取出或設置text內容.attr() 取出或設置某個屬性的值.width() 取出或設置某個元素的寬度.height() 取出或設置某個元素的高度.val() 取出某個表單元素的值
需要注意的是,如果結果集包含多個元素,那么賦值的時候,將對其中所有的元素賦值;取值的時候,則是只取出第一個元素的值
[注意].text()例外,它取出所有元素的text內容
以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!
新聞熱點
疑難解答