亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > JavaScript > 正文

jQuery之DOM對象和jQuery對象的轉換與區別分析

2024-05-06 16:13:56
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了jQuery之DOM對象和jQuery對象的轉換與區別分析,對比分析了DOM對象和jQuery對象的原理與用法,具有一定參考借鑒價值,需要的朋友可以參考下
 

本文實例分析了DOM對象和jQuery對象的轉換與區別。分享給大家供大家參考。具體分析如下:

jQuery Hello World程序:

<script type="text/javascript" src="xxx//jquery-x.y.z.js">
引入jQuery.存在兩個版本,jquery-x.y.z.min.js是精簡壓縮版,不帶min的是開發版,代碼中的注釋和縮進等都被保留了.

注意路徑中的"/"需要轉義,即用"//".

$()符號將DOM對象轉化為jQuery對象.
Hello World程序如下:

復制代碼代碼如下:
<html>
<head>
    <title>Hello jQuery</title>
    <script type="text/javascript" src="libs//jquery-1.11.2.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            alert("Hello World");
        });
    </script>
</head>
<body>

 

</body>
</html>

 

$(document).ready和window.onload的比較

首先看window.onload:

復制代碼代碼如下:
window.onload = sayHello;
window.onload = sayWorld;
 
function sayHello() {
    alert("Hello");
}
function sayWorld() {
    alert("World");
}

 

后面的方法會覆蓋掉前面的方法,也即彈泡最后只顯示一個,即World的那個.

如果采用$(document).ready,則方法會串聯起來,即先顯示Hello的alert,再顯示World的.

復制代碼代碼如下:
$(document).ready(sayHello);
$(document).ready(sayWorld);
 
function sayHello() {
    alert("Hello");
}
function sayWorld() {
    alert("World");
}

 

這樣就可以關聯多個方法.
另一個很小的差別,就是ready方法的執行會稍微靠前一點.widow.onload會等待DOM準備好,并且所有綁定結束,而ready只能DOM準備好,其他工作可能還沒有做好.

實例:給每一個超鏈接對象附加onclick事件

首先,body中添加多個超鏈接對象:

復制代碼代碼如下:
<body>
    <a href="#">test1</a><br>
    <a href="#">test2</a><br>
    <a href="#">test3</a><br>
    <a href="#">test4</a>
</body>


要給每個對象添加onclick事件,可以有多種方法:
首先,可以在每個a標簽里面寫onclick屬性;
其次,可以利用window.onload添加一個方法,獲取所有的標簽,統一添加事件,如下:

復制代碼代碼如下:
window.onload = function () {
    var myLinks = document.getElementsByTagName("a");
    for(var i = 0; i < myLinks.length; ++i){
        myLinks[i].onclick = function(){
            alert("Hello link: " + i);
        }
    }
}

 

注意,這里我犯了一個錯誤,我本來以為alert的數目會遞增,結果實際運行的結果是每一個alert都是4.
這是因為js沒有塊級作用域,變量i引用的是for里的那個,循環后變成了4.也即,onclick事件發生的時候才去取i的值,當然都是4了.
 
下面用jQuery實現這一功能:

復制代碼代碼如下:
$(document).ready(function () {
    $("a").click(function () {
        alert("Hello link from jQuery!");
    });
});

 

jQuery中的$()符號會獲得頁面當中的所有合適的元素.
所以上面的代碼隱含了遍歷的過程,給每一個元素都加上了事件處理函數.
click方法是jQuery對象提供的方法.
onclick是DOM對象的屬性.

DOM里面的很多屬性到jQuery里面就變成了方法.

DOM對象和jQuery對象之間的相互轉換與區別

看一個例子,首先加一個p標簽:

復制代碼代碼如下:
<p id="clickMe">Click Me!</p>

 

先獲得一個DOM對象,然后將其轉換為一個jQuery對象:

復制代碼代碼如下:
//Part 1: DOM --> jQuery
//DOM object:
var pElement = document.getElementsByTagName("p")[0];
alert("DOM pElement: " + pElement.innerHTML);
//Convert DOM object to jQuery object:
var pElementjQuery = $(pElement);
alert("jQuery pElementjQuery: " + pElementjQuery.html());

 

也可以先獲得一個jQuery對象,再將其轉換為DOM對象:

復制代碼代碼如下:
//Part 2: jQuery --> DOM
//jQuery object array:
var clickMejQuery = $("#clickMe");
//Convert jQuery object to DOM object (2 ways):
//way 1:
var domClickMe1 = clickMejQuery[0];
alert("dom1: " + domClickMe1.innerHTML);

 

//way 2:
var domClickMe2 = clickMejQuery.get(0);
alert("dom2: " + domClickMe2.innerHTML);

 

再次注意:jQuery中$()獲取的是一個滿足條件的所有元素的數組.

小總結:

$("字符串")會返回滿足條件的所有元素的一個數組,其中:
字符串以#開頭,表示id;
字符串以.開頭,表示CSS的class名;
若非以上兩種情況,則改字符串表示標簽名.

$(DOM對象)可以得到一個jQuery對象.

希望本文所述對大家的jQuery程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
影音先锋欧美精品| 国产精品欧美在线| 91国内精品久久| 午夜精品一区二区三区在线视频| 日韩免费av片在线观看| 51精品在线观看| 亚洲成色999久久网站| 一个色综合导航| 懂色aⅴ精品一区二区三区蜜月| 国产伦精品一区二区三区精品视频| 欧美一级大片视频| 人九九综合九九宗合| 亚洲精品动漫久久久久| 富二代精品短视频| 欧美成人精品一区| 91精品久久久久久久久青青| 色偷偷888欧美精品久久久| 中日韩美女免费视频网站在线观看| 日韩av成人在线| 久久69精品久久久久久国产越南| 8090理伦午夜在线电影| 欧美精品一区二区免费| 日韩美女av在线免费观看| 奇米4444一区二区三区| 久久夜色精品国产欧美乱| 亚洲国产精品一区二区久| 久久av在线看| 欧美激情国产日韩精品一区18| 国语自产精品视频在线看一大j8| 色综合久久悠悠| 精品久久香蕉国产线看观看亚洲| www欧美xxxx| 清纯唯美日韩制服另类| 精品性高朝久久久久久久| 国产自摸综合网| 亚洲欧美日韩国产中文| 自拍偷拍亚洲区| 韩日欧美一区二区| 日韩hd视频在线观看| 亚洲精品按摩视频| 丝袜美腿亚洲一区二区| 亚洲香蕉伊综合在人在线视看| www亚洲精品| 色香阁99久久精品久久久| 国产精品久久久av久久久| 亚洲人成电影网站色xx| 亚洲国产精品热久久| 亚洲欧美日韩中文在线| 国产欧美 在线欧美| 亚洲欧美一区二区三区在线| 日本欧美黄网站| 国产精品成av人在线视午夜片| 久久夜色精品国产欧美乱| 亚洲午夜国产成人av电影男同| 色偷偷9999www| 国产精品第一第二| 日本中文字幕成人| 日本高清+成人网在线观看| 亚洲国产精品va| 国产精品视频午夜| 久久亚洲精品一区| 国产成人久久久精品一区| 欧美日韩性视频| 中文字幕视频一区二区在线有码| 久久99久国产精品黄毛片入口| 欧美极品少妇xxxxⅹ裸体艺术| 午夜精品一区二区三区av| 国产精品久久久久久久午夜| 欧美成人精品一区| 日本高清视频精品| 欧美天天综合色影久久精品| 久久久久国产一区二区三区| 欧美精品在线免费| 136fldh精品导航福利| 日韩中文字幕在线精品| 国产免费一区二区三区在线能观看| 国产精品第一区| 久久99久久久久久久噜噜| 欧美激情精品久久久久久免费印度| 欧美成人午夜激情| 91成人性视频| 欧洲成人在线观看| 国产欧美一区二区三区四区| 日日狠狠久久偷偷四色综合免费| 国产精品久久久久久久久免费看| 51精品在线观看| 国产精品久久婷婷六月丁香| 欧美日韩综合视频网址| 国产精品香蕉av| 日韩视频在线免费| 国产女精品视频网站免费| 亚洲天堂av电影| 久久福利网址导航| 国产精品无码专区在线观看| 韩剧1988在线观看免费完整版| 8x海外华人永久免费日韩内陆视频| 久久全国免费视频| 欧美日本高清视频| 欧美日韩精品在线视频| 国产精品亚洲一区二区三区| 深夜福利国产精品| 成人中文字幕+乱码+中文字幕| 色狠狠av一区二区三区香蕉蜜桃| 国产亚洲视频中文字幕视频| 国产视频在线观看一区二区| 在线日韩日本国产亚洲| 国产一区玩具在线观看| 91麻豆国产精品| 亚洲最大成人免费视频| 国产精品一区二区3区| 亚洲色图综合久久| 国产91精品久久久久久久| 欧美日本在线视频中文字字幕| 欧美极品在线视频| 欧美成人全部免费| 最新日韩中文字幕| 亚洲国模精品一区| 国产午夜精品视频免费不卡69堂| 中文国产成人精品| 久久精品视频在线播放| 久久这里只有精品99| 欧美性做爰毛片| 欧美性生交大片免网| 日韩免费av一区二区| 宅男66日本亚洲欧美视频| 欧美激情aaaa| 4388成人网| 日韩在线视频免费观看高清中文| 欧美一级大胆视频| 国产一区二区免费| 亚洲另类欧美自拍| 欧美大秀在线观看| 午夜免费久久久久| 午夜伦理精品一区| 欧美日韩亚洲一区二区三区| 亚洲午夜精品视频| xvideos亚洲| 性金发美女69hd大尺寸| 亚洲自拍偷拍第一页| 久久久影视精品| 欧美理论在线观看| 在线日韩欧美视频| 欧美亚州一区二区三区| 欧美黄色免费网站| 在线看国产精品| 日本一区二区在线免费播放| 欧美福利视频网站| 国产91精品最新在线播放| 亚洲激情 国产| 亚洲嫩模很污视频| 中文字幕日韩在线视频| 日本久久久a级免费| 亚洲精品av在线| 欧美精品成人91久久久久久久| 国产成人高潮免费观看精品| 欧美中文字幕精品| 日韩欧美极品在线观看| 日韩av一区在线观看| 久久久免费av| 亚洲一品av免费观看| 亚洲最大在线视频| 久久久免费av| 久久99国产精品自在自在app| 日韩精品中文在线观看|