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

checkbox全選所涉及到的知識點(diǎn)介紹

 更新時(shí)間:2013年12月31日 15:50:51   作者:  
checkbox全選涉及到的知識點(diǎn)比如IE里起作用,火狐不起作用,getElementById()與getElementsByName()的區(qū)別等等
1、IE里起作用,火狐不起作用

IE版本
復(fù)制代碼 代碼如下:

<script type="text/javascript">

function checkALL(str)//全選控制的JS
{
var a=document.getElementsByName(str);
var n=a.length;

for(var i=0;i<n;i++)

{

a[i].checked=window.event.srcElement.checked;

}

}

</script>

火狐版本
復(fù)制代碼 代碼如下:

<script type="text/javascript">

function checkALL(str)//全選控制的JS
{
var a=document.getElementsByName(str);
var n=a.length;
for(var i=0;i<n;i++){
a[i].checked=document.getElementById("all").checked;
}
}

</script>

原因分析:window.event只能在IE下運(yùn)行,所以在火狐下js運(yùn)行不起作用?;鸷姹纠镱^,是直接獲得"id=all"的checkbox被選擇狀態(tài),然后賦值給"name=str"的checkbox組的每一項(xiàng),這樣就可以保持選擇狀態(tài)的同步。

2、document.getElementById()與document.getElementsByName()的區(qū)別

上面那段js通過兩種方式獲得了checkbox的狀態(tài),從名字上看,他們的作用應(yīng)該是類似,一個(gè)通過id獲得元素,一個(gè)通過name獲得元素。但這兩個(gè)方法是有差別的,如果在使用過程中不注意,很可能會(huì)覺得可以混用,從而會(huì)造成困擾。我當(dāng)時(shí)就覺得隨便用一個(gè)就好,但改名字后,js代碼卻不起作用,其實(shí)是因?yàn)椴涣私?,?dǎo)致用錯(cuò)了。

(1)document.getElementById()是通過id訪問某一個(gè)特定元素,因?yàn)樵谝粋€(gè)頁面中id是唯一的,所以這個(gè)函數(shù)返回的是一個(gè)Element

(2)document.getElementsByName()是通過name來訪問元素,因?yàn)樵谝粋€(gè)頁面中name不是唯一的,可以重名,所以這個(gè)函數(shù)返回的是一組Elements

正是因?yàn)橐粋€(gè)是元素,一個(gè)是數(shù)組,所以在混用的時(shí)候不注意就會(huì)出錯(cuò),導(dǎo)致js運(yùn)行不下去。比如,當(dāng)時(shí)我把a(bǔ)[i].checked=document.getElementById("all").checked;改成a[i].checked=document.getElementsByName("all").checked;的時(shí)候,js運(yùn)行不起作用(因?yàn)閖s出錯(cuò)但不報(bào)錯(cuò),所以感覺是沒起作用),其實(shí)此處并不是不識別,是因?yàn)檎{(diào)用的時(shí)候用錯(cuò)了,正確寫法是a[i].checked=document.getElementsByName("all")[0].checked;這樣改后,效果一樣。因?yàn)槲覀兊捻撁嬷兄淮嬖谝粋€(gè)"name=all"的checkbox,所以我們以[0]來取Elements中的第一個(gè)元素,就是我們通過a[i].checked=document.getElementById("all").checked;獲得的那個(gè)元素。

相關(guān)文章

  • 性能優(yōu)化之代碼優(yōu)化頁面加載速度

    性能優(yōu)化之代碼優(yōu)化頁面加載速度

    本文主要介紹了代碼優(yōu)化頁面加載速度的方法。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-03-03
  • js實(shí)現(xiàn)點(diǎn)小圖看大圖效果的思路及示例代碼

    js實(shí)現(xiàn)點(diǎn)小圖看大圖效果的思路及示例代碼

    點(diǎn)小圖看大圖的效果想必很多的朋友都有見到過吧,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下
    2013-10-10
  • URL中“#” “?” &“”號的作用淺析

    URL中“#” “?” &“”號的作用淺析

    這篇文章主要介紹了URL中“#” “?” &“”號的作用淺析,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-02-02
  • javascript實(shí)現(xiàn)table表格隔行變色的方法

    javascript實(shí)現(xiàn)table表格隔行變色的方法

    這篇文章主要介紹了javascript實(shí)現(xiàn)table表格隔行變色的方法,涉及javascript針對表格元素與樣式的操作技巧,需要的朋友可以參考下
    2015-05-05
  • JavaScript?Promise多并發(fā)問題的解決方法詳解

    JavaScript?Promise多并發(fā)問題的解決方法詳解

    提起控制并發(fā),大家應(yīng)該不陌生,這篇文章主要來和大家介紹一下JavaScript如何解決Promise多并發(fā)問題,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-09-09
  • javascript 變量作用域 代碼分析

    javascript 變量作用域 代碼分析

    作用域(scope)是javascript中一項(xiàng)令人棘手的的特性。所有面向?qū)ο缶幊陶Z言都有某種形式的作用域,不過和把這個(gè)概念放在什么上下文中有關(guān)。在javascript里,作用域是由函數(shù)劃分的。
    2009-06-06
  • 禁止頁面刷新讓F5快捷鍵及右鍵都無效

    禁止頁面刷新讓F5快捷鍵及右鍵都無效

    禁止頁面刷新讓F5快捷鍵及右鍵都無效,下面有個(gè)不不錯(cuò)的實(shí)現(xiàn)方法,大家可以感受下
    2014-01-01
  • 淺析js預(yù)加載/延遲加載

    淺析js預(yù)加載/延遲加載

    本文主要介紹了js預(yù)加載和延時(shí)加載2種技術(shù),簡單分析了他們的實(shí)現(xiàn)方式和優(yōu)缺點(diǎn),非常的實(shí)用,有需要的朋友參考下
    2014-09-09
  • 詳解JavaScript中數(shù)組的reduce方法

    詳解JavaScript中數(shù)組的reduce方法

    js函數(shù)中有三個(gè)在特定場合很好用的函數(shù):reduce(),map(),filter()。而數(shù)組經(jīng)常用到的方法有push、join、indexOf、slice等等,但是有一個(gè)經(jīng)常被我們忽略的方法:reduce,這個(gè)方法簡直強(qiáng)大的不要不要的。下面通過這篇文章來一起學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖

    JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖

    這篇文章主要介紹了JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10

最新評論

黔南| 眉山市| 南京市| 民县| 舒兰市| 扶风县| 潮安县| 龙岩市| 佳木斯市| 肥城市| 台东县| 新晃| 凉城县| 合川市| 时尚| 怀化市| 湄潭县| 曲沃县| 广安市| 广河县| 全椒县| 东城区| 饶平县| 百色市| 贡山| 湟源县| 高州市| 揭东县| 汕头市| 新河县| 西畴县| 芦溪县| 栾城县| 汕头市| 南和县| 萨迦县| 聊城市| 塘沽区| 桦川县| 九龙坡区| 宁远县|