<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        attribute和property的區(qū)別_html/css_WEB-ITnose

        來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 16:06:13
        文檔

        attribute和property的區(qū)別_html/css_WEB-ITnose

        attribute和property的區(qū)別_html/css_WEB-ITnose: DOM元素的attribute和property很容易混在一起,分不清楚,兩者是不同的東西,但是兩者又聯(lián)系緊密。很多新手朋友,也包括以前的我,經(jīng)常會搞不清楚。 attribute翻譯成中文術語為特性,property翻譯成中文術語為屬性,從中文的字面意思來看,確實是
        推薦度:
        導讀attribute和property的區(qū)別_html/css_WEB-ITnose: DOM元素的attribute和property很容易混在一起,分不清楚,兩者是不同的東西,但是兩者又聯(lián)系緊密。很多新手朋友,也包括以前的我,經(jīng)常會搞不清楚。 attribute翻譯成中文術語為特性,property翻譯成中文術語為屬性,從中文的字面意思來看,確實是

          

          DOM元素的attribute和property很容易混?在一起,分不清楚,兩者是不同的東西,但是兩者又聯(lián)系緊密。很多新手朋友,也包括以前的我,經(jīng)常會搞不清楚。

        attribute翻譯成中文術語為“特性”,property翻譯成中文術語為“屬性”,從中文的字面意思來看,確實是有點區(qū)別了,先來說說attribute。

        attribute是一個特性節(jié)點,每個DOM元素都有一個對應的attributes屬性來存放所有的attribute節(jié)點,attributes是一個類數(shù)組的容器,說得準確點就是NameNodeMap,總之就是一個類似數(shù)組但又和數(shù)組不太一樣的容器。attributes的每個數(shù)字索引以名值對(name=”value”)的形式存放了一個attribute節(jié)點。

        hello

        上面的div元素的HTML代碼中有class、id還有自定義的gameid,這些特性都存放在attributes中,類似下面的形式:

        [ class="box", id="box", gameid="880" ]

        可以這樣來訪問attribute節(jié)點:

        var elem = document.getElementById( 'box' );console.log( elem.attributes[0].name ); // classconsole.log( elem.attributes[0].value ); // box

        但是IE6-7將很多東西都存放在attributes中,上面的訪問方法和標準瀏覽器的返回結果又不同。通常要獲取一個attribute節(jié)點直接用getAttribute方法:

        console.log( elem.getAttribute('gameid') ); // 880

        要設置一個attribute節(jié)點使用setAttribute方法,要刪除就用removeAttribute:

        elem.setAttribute('testAttr', 'testVal');console.log( elem.removeAttribute('gameid') ); // undefined

        attributes是會隨著添加或刪除attribute節(jié)點動態(tài)更新的。

        property就是一個屬性,如果把DOM元素看成是一個普通的Object對象,那么property就是一個以名值對(name=”value”)的形式存放在Object中的屬性。要添加和刪除property也簡單多了,和普通的對象沒啥分別:

        elem.gameid = 880; // 添加console.log( elem.gameid ) // 獲取delete elem.gameid // 刪除

        之所以attribute和property容易混?在一起的原因是,很多attribute節(jié)點還有一個相對應的property屬性,比如上面的div元素的id和class既是attribute,也有對應的property,不管使用哪種方法都可以訪問和修改。

        console.log( elem.getAttribute('id') ); // boxconsole.log( elem.id ); // boxelem.id = 'hello';console.log( elem.getAttribute('id') ); // hello

        但是對于自定義的attribute節(jié)點,或者自定義property,兩者就沒有關系了。

        console.log( elem.getAttribute('gameid') ); // 880console.log( elem.gameid ); // undefinedelem.areaid = '900';console.log( elem.getAttribute('areaid') ) // null

        對于IE6-7來說,沒有區(qū)分attribute和property:

        console.log( elem.getAttribute('gameid') ); // 880console.log( elem.gameid ); // 880elem.areaid = '900';console.log( elem.getAttribute('areaid') ) // 900

        很多新手朋友估計都很容易掉進這個坑中。

        DOM元素一些默認常見的attribute節(jié)點都有與之對應的property屬性,比較特殊的是一些值為Boolean類型的property,如一些表單元素:

        var radio = document.getElementById( 'radio' );console.log( radio.getAttribute('checked') ); // checkedconsole.log( radio.checked ); // true

        對于這些特殊的attribute節(jié)點,只有存在該節(jié)點,對應的property的值就為true,如:

        var radio = document.getElementById( 'radio' );console.log( radio.getAttribute('checked') ); // anythingconsole.log( radio.checked ); // true

        最后為了更好的區(qū)分attribute和property,基本可以總結為attribute節(jié)點都是在HTML代碼中可見的,而property只是一個普通的名值對屬性。

        // gameid和id都是attribute節(jié)點// id同時又可以通過property來訪問和修改hello// areaid僅僅是propertyelem.areaid = 900;

        轉載自:雨夜帶刀's Blog

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        attribute和property的區(qū)別_html/css_WEB-ITnose

        attribute和property的區(qū)別_html/css_WEB-ITnose: DOM元素的attribute和property很容易混在一起,分不清楚,兩者是不同的東西,但是兩者又聯(lián)系緊密。很多新手朋友,也包括以前的我,經(jīng)常會搞不清楚。 attribute翻譯成中文術語為特性,property翻譯成中文術語為屬性,從中文的字面意思來看,確實是
        推薦度:
        標簽: 的區(qū)別 html css
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产V亚洲V天堂A无码| 午夜视频在线观看免费完整版| 国产高清免费在线| 亚洲jjzzjjzz在线观看| 免费视频爱爱太爽了| 亚洲三级在线免费观看| 永久免费av无码不卡在线观看| 国产成人精品日本亚洲专一区| 最新仑乱免费视频| 亚洲精品无码成人| 亚洲?v无码国产在丝袜线观看| 一区免费在线观看| 精品亚洲一区二区| 3d成人免费动漫在线观看| 亚洲乱码卡三乱码新区| 四虎永久在线精品免费网址| 亚洲a∨国产av综合av下载| 四虎成人精品在永久免费| 在线播放免费人成视频网站| 久久亚洲国产欧洲精品一| 蜜臀98精品国产免费观看| 在线a亚洲老鸭窝天堂av高清| 国产国产人免费视频成69大陆| 国产精品永久免费| 99人中文字幕亚洲区| 搡女人真爽免费视频大全| 添bbb免费观看高清视频| 亚洲色WWW成人永久网址| 啦啦啦完整版免费视频在线观看| 亚洲人成色在线观看| 亚洲精品国产福利一二区| 免费成人在线电影| 亚洲av纯肉无码精品动漫| 亚洲日韩精品无码一区二区三区| 亚洲w码欧洲s码免费| 精品一区二区三区无码免费直播| 亚洲中文字幕不卡无码| 我们的2018在线观看免费高清| 精品在线免费视频| 亚洲精品成人久久| 亚洲日韩在线第一页|