最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript中setAttribute兼容性用法分析

 更新時(shí)間:2016年12月12日 11:18:09   作者:qq_26702065  
這篇文章主要介紹了javascript中setAttribute兼容性用法,結(jié)合實(shí)例形式分析了javascript使用setAttribute進(jìn)行屬性設(shè)置操作的相關(guān)使用技巧,需要的朋友可以參考下

本文實(shí)例分析了javascript中setAttribute兼容性用法。分享給大家供大家參考,具體如下:

1:常規(guī)屬性建議使用 node.XXXX。
2:自定義屬性建議使用node.getAttribute("XXXX")。
3:當(dāng)獲取的目標(biāo)是JS里的關(guān)鍵字時(shí)建議使用node.getAttribute("XXX"),如label中的for。
4:當(dāng)獲取的目標(biāo)是保留字,如:class,請(qǐng)使用className代替。

setAttribute(string name, string value):增加一個(gè)指定名稱(chēng)和值的新屬性,或者把一個(gè)現(xiàn)有的屬性設(shè)定為指定的值。

1、樣式問(wèn)題

setAttribute("class", value)中class是指改變"class"這個(gè)屬性,所以要帶引號(hào)。

vName代表對(duì)樣式賦值。

例如:

代碼如下:

var input = document.createElement("input");
input.setAttribute("type", "text");
input.setAttribute("name", "q");
input.setAttribute("class",bordercss);

輸出時(shí):<input type="text" name="q" class="bordercss">,即,input控件具有bordercss樣式屬性

注意:class屬性在W3C DOM中扮演著很重要的角色,但由于瀏覽器差異性仍然存在。

使用setAttribute("class", vName)語(yǔ)句動(dòng)態(tài)設(shè)置Element的class屬性在firefox中是行的通的,但在IE中卻不行。因?yàn)槭褂肐E內(nèi)核的瀏覽器不認(rèn)識(shí)"class",要改用"className";

同樣,firefox 也不認(rèn)識(shí)"className"。所以常用的方法是二者兼?zhèn)洌?/p>

代碼如下:

element.setAttribute("class", value); //for firefox
element.setAttribute("className", value); //for IE

2、方法屬性等問(wèn)題

例如:

代碼如下:

var bar = document.getElementById("testbt");
bar.setAttribute("onclick", "javascript:alert('This is a test!');");

這里利用setAttribute指定e的onclick屬性,簡(jiǎn)單,很好理解。

但是IE不支持,IE并不是不支持setAttribute這個(gè)函數(shù),而是不支持用setAttribute設(shè)置某些屬性,例如對(duì)象屬性、集合屬性、事件屬性,也就是說(shuō)用setAttribute設(shè)置style和onclick這些屬性在IE中是行不通的。

為達(dá)到兼容各種瀏覽器的效果,可以用點(diǎn)符號(hào)法來(lái)設(shè)置Element的對(duì)象屬性、集合屬性和事件屬性。

代碼如下:

document.getElementById("testbt").className = "bordercss";
document.getElementById("testbt").style.cssText = "color: #00f;";
document.getElementById("testbt").style.color = "#00f";
document.getElementById("testbt").onclick= function () { alert("This is a test!"); }

示例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>kingwell</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body>
<div id="idHeader" class="class-header" title="kingwell" status="1"></div>
<label id="forUserName" for="userName" title="kingwell" status="1"></label>
<script type="text/javascript">
var el = document.getElementById("idHeader");
alert(el.getAttribute("id"));
alert(el.id);
// IE Firfox->idHeader
alert(el.getAttribute("class"));
//IE6,IE7 -> null IE8,IE9,Firefox ->class-header
alert(el.class);
//IE6,IE7,IE8->報(bào)錯(cuò) IE9,Firefox->undefined
alert(el.getAttribute("className"));
//IE6,IE7->class-header ; IE8,IE9,Firefox -> undefined
alert(el.className);
//All -> class-header
var elfor = document.getElementById("forUserName");
alert(elfor.getAttribute("for"));
//IE6,IE7->undefined IE8,9,Firefox->forUseName
alert(elfor.for )
//IE6,IE7報(bào)錯(cuò),其它為undefined
alert(elfor.title)
//全部輸出kingwell
alert(elfor.status);
//IE6-8 -> 1 IE9,Firefox->undefined
alert(elfor.getAttribute("status"))
//全部輸出 1
</script>
</body>
</html>

更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專(zhuān)題:《JavaScript常用函數(shù)技巧匯總》、《javascript面向?qū)ο笕腴T(mén)教程》、《JavaScript中json操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫(huà)特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 簡(jiǎn)潔短小的 JavaScript IE 瀏覽器判定代碼

    簡(jiǎn)潔短小的 JavaScript IE 瀏覽器判定代碼

    IE瀏覽器不管是什么版本,總是跟Web標(biāo)準(zhǔn)有些不太兼容。對(duì)于代碼工作者來(lái)說(shuō),自然是苦不堪言,為了考慮IE的兼容問(wèn)題,不管是寫(xiě) CSS 還是 JS,往往都要對(duì) IE 特別對(duì)待,這就少不了做些判斷。本文不討論如何區(qū)分 IE 的樣式,僅是 JS 判定 IE 瀏覽器。
    2010-03-03
  • JavaScript使用canvas實(shí)現(xiàn)手寫(xiě)簽名功能

    JavaScript使用canvas實(shí)現(xiàn)手寫(xiě)簽名功能

    最近遇到一個(gè)h5手寫(xiě)簽名的需求,按理說(shuō)這種功能網(wǎng)上隨便一搜一大把現(xiàn)成的源碼和組件,但是像這種比較經(jīng)典又很簡(jiǎn)單的功能,還是要弄清楚到底怎么實(shí)現(xiàn)的,所以接下來(lái)本文就給大家介紹一下如何用canvas實(shí)現(xiàn)手寫(xiě)簽名功能
    2023-08-08
  • JavaScript中exec()方法詳解

    JavaScript中exec()方法詳解

    JavaScript的exec()方法是在正則表達(dá)式對(duì)象上調(diào)用的方法,它用于在字符串中執(zhí)行正則表達(dá)式搜索,并返回匹配的結(jié)果,本文就給大家詳細(xì)的講解JavaScript中exec()方法,感興趣的同學(xué)跟著小編一起來(lái)看看吧
    2023-09-09
  • 詳解JavaScript中?.、??和??=的用法及使用場(chǎng)景

    詳解JavaScript中?.、??和??=的用法及使用場(chǎng)景

    這篇文章主要為大家詳細(xì)介紹了JavaScript中?.、??和??=的用法及使用場(chǎng)景,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-08-08
  • js獲取iframe中的window對(duì)象的實(shí)現(xiàn)方法

    js獲取iframe中的window對(duì)象的實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇JS獲得iframe中的window對(duì)象的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • layui table去掉右側(cè)滑動(dòng)條的實(shí)現(xiàn)方法

    layui table去掉右側(cè)滑動(dòng)條的實(shí)現(xiàn)方法

    今天小編就為大家分享一篇layui table去掉右側(cè)滑動(dòng)條的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-09-09
  • javascript 響應(yīng)鍵盤(pán)特定按鍵(只響應(yīng)數(shù)字鍵)

    javascript 響應(yīng)鍵盤(pán)特定按鍵(只響應(yīng)數(shù)字鍵)

    響應(yīng)鍵盤(pán)特定按鍵(只響應(yīng)數(shù)字鍵),大家可以看看思路。
    2009-03-03
  • jQuery與原生JavaScript選擇HTML元素集合用法對(duì)比分析

    jQuery與原生JavaScript選擇HTML元素集合用法對(duì)比分析

    這篇文章主要介紹了jQuery與原生JavaScript選擇HTML元素集合用法,結(jié)合實(shí)例形式對(duì)比分析了jquery與原生JavaScript選擇頁(yè)面HTML相關(guān)操作方法、注意事項(xiàng)及運(yùn)行效率,需要的朋友可以參考下
    2019-11-11
  • js文件中引入另一個(gè)js文件的4種方法總結(jié)

    js文件中引入另一個(gè)js文件的4種方法總結(jié)

    JavaScript文件是一個(gè)文本類(lèi)型的文件,在任何文本編輯器中都可以被打開(kāi)和編輯,JavaScript文件的擴(kuò)展名為js,這篇文章主要給大家介紹了關(guān)于js文件中引入另一個(gè)js文件的4種方法總結(jié),需要的朋友可以參考下
    2023-12-12
  • js左右彈性滾動(dòng)對(duì)聯(lián)廣告代碼分享

    js左右彈性滾動(dòng)對(duì)聯(lián)廣告代碼分享

    這個(gè)對(duì)聯(lián)廣告與其它的有所區(qū)別,這個(gè)是頁(yè)面加載時(shí)先沒(méi)看到廣告,然后從左邊快速飛進(jìn)來(lái)的兩個(gè)對(duì)聯(lián)廣告哦,下面我們一起來(lái)看看對(duì)聯(lián)廣告效果代碼
    2014-02-02

最新評(píng)論

永登县| 酒泉市| 高尔夫| 浏阳市| 永年县| 永清县| 灵寿县| 神农架林区| 冕宁县| 治多县| 新津县| 呼伦贝尔市| 合水县| 肥东县| 松江区| 红安县| 锡林浩特市| 张家川| 思茅市| 方正县| 宁阳县| 牡丹江市| 巫山县| 博湖县| 东兰县| 兴化市| 神农架林区| 贡嘎县| 天气| 义马市| 东城区| 定襄县| 突泉县| 巴彦县| 石家庄市| 赞皇县| 油尖旺区| 绍兴县| 鹰潭市| 越西县| 新化县|