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

首頁 > 編程 > JavaScript > 正文

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

2019-11-20 13:28:14
字體:
來源:轉載
供稿:網友

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

jQuery Hello World程序:

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

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

$()符號將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探花福利精品国产自产在线| 亚洲视频在线免费看| 91亚洲永久免费精品| 中文字幕在线国产精品| 日韩电影大全免费观看2023年上| 成人精品久久久| 亚洲第一精品夜夜躁人人爽| 日韩hd视频在线观看| 亚洲四色影视在线观看| 亚洲一区二区三区香蕉| 日韩av一区在线| 久久久久久午夜| 久久大大胆人体| 91精品国产电影| 7777kkkk成人观看| 亚洲欧美日韩区| 亚洲 日韩 国产第一| 国产在线精品成人一区二区三区| 亚洲精品美女在线观看播放| 91精品国产91久久久久久久久| 日韩中文字幕免费看| 久久成人精品视频| 亚洲精品第一页| 国产精品99蜜臀久久不卡二区| 亚洲www永久成人夜色| 91理论片午午论夜理片久久| 麻豆国产精品va在线观看不卡| 精品亚洲永久免费精品| 欧美专区在线视频| 在线观看欧美日韩| 国产97在线|日韩| 韩国v欧美v日本v亚洲| 国产精品高潮在线| 永久免费看mv网站入口亚洲| 尤物yw午夜国产精品视频明星| 国产欧美中文字幕| 欧美国产第一页| 最近2019中文字幕在线高清| 91免费视频国产| 美乳少妇欧美精品| 精品国产乱码久久久久久虫虫漫画| www.亚洲人.com| 国产+人+亚洲| 不卡伊人av在线播放| 国产xxx69麻豆国语对白| 亚洲一区二区中文| 久久乐国产精品| 久久精品这里热有精品| 亚洲日本中文字幕| 91视频国产高清| 亚洲午夜精品久久久久久性色| 国产日韩中文字幕| 亚洲欧洲第一视频| 亚洲乱码国产乱码精品精| 久久久亚洲影院| 亚洲精品久久久久久久久久久| 亚洲一区二区三区乱码aⅴ| 国产成人一区三区| 日韩av在线导航| 欧美中文在线视频| wwwwwwww亚洲| 欧美国产日韩中文字幕在线| 日韩暖暖在线视频| 欧美夜福利tv在线| 69视频在线免费观看| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲一区二区三区香蕉| 久久久久在线观看| 一本色道久久88亚洲综合88| 久久免费高清视频| 日韩最新免费不卡| 欧美国产精品va在线观看| 中文字幕亚洲综合| 136fldh精品导航福利| 亚洲欧美日韩一区在线| 狠狠色狠色综合曰曰| 欧美在线一区二区三区四| 欧美性猛交xxxx黑人猛交| 亚洲精品www久久久| 久久久人成影片一区二区三区| 亚洲视频999| 亚洲天堂精品在线| 亚洲天堂网站在线观看视频| 狠狠躁夜夜躁人人躁婷婷91| 久久久国产一区| 久久久久久久网站| 久久91超碰青草是什么| 97碰在线观看| 色樱桃影院亚洲精品影院| 成人激情在线播放| 日本人成精品视频在线| 色偷偷亚洲男人天堂| 中文字幕日本欧美| 久久久午夜视频| 欧美性精品220| 国产精品com| 国产福利视频一区| 中文字幕亚洲无线码a| 国产精品久久久久久久久久三级| 亚洲自拍小视频免费观看| 国产亚洲成av人片在线观看桃| 国产91对白在线播放| 国产成人91久久精品| 久久成人一区二区| 欧美亚洲国产日本| 美女福利精品视频| 国产成+人+综合+亚洲欧美丁香花| 日本亚洲精品在线观看| 久久青草福利网站| 国产精品午夜国产小视频| 欧美激情一区二区三区成人| 中文字幕av一区中文字幕天堂| 日韩中文字幕精品视频| 日本成人黄色片| 日韩美女免费视频| 亚洲成avwww人| 日本在线精品视频| 欧美高清无遮挡| 欧美理论电影在线播放| 日韩av一区在线观看| 国产亚洲精品美女久久久| 欧美精品久久久久| 久久精品成人欧美大片古装| 亚洲天堂av在线免费| 北条麻妃久久精品| 国产福利视频一区二区| 清纯唯美日韩制服另类| 日本久久中文字幕| 亚洲男人天堂视频| 久久久久久亚洲精品| 欧美综合在线观看| 欧美日韩一区二区免费视频| 国产精品一区电影| 欧美日韩国产成人在线| 日韩av在线免费| 久操成人在线视频| 国产成人aa精品一区在线播放| 久久国产精品久久国产精品| 91美女片黄在线观看游戏| 精品亚洲国产成av人片传媒| 国产精品国内视频| 国产亚洲精品一区二555| 欧美精品videos另类日本| 国产精品美女免费看| 久久久久亚洲精品| 日韩在线观看视频免费| 92看片淫黄大片欧美看国产片| 欧美国产极速在线| 午夜剧场成人观在线视频免费观看| 国产精品久久久久久亚洲影视| 亚洲伦理中文字幕| 成人性生交大片免费看小说| 美女视频黄免费的亚洲男人天堂| 国产伊人精品在线| 日韩av手机在线看| 精品久久久香蕉免费精品视频| 中文字幕亚洲一区二区三区五十路| 日韩免费视频在线观看| 7777精品视频| 成人在线视频网| 欧美日韩精品在线视频|