今天遇到的問(wèn)題!關(guān)于JavaScript
Posted on 2006-08-02 21:15 兵臨城下 閱讀(417) 評(píng)論(4) 編輯 收藏 所屬分類: JavaScript???????? 光說(shuō)很難說(shuō)清楚,我給大家演示一下:
???????? 網(wǎng)頁(yè)中存在這樣的一個(gè)數(shù)組,通過(guò)script打出的 <script>var pdt =[1,2];</script>,邏輯是想通過(guò)這個(gè)數(shù)組的長(zhǎng)度來(lái)控制一張圖片的鏈接:<img id = "ref" src="/reference.tif" width="389"/>。
???????? 控制方法如下:在<body onload = "reference()">中調(diào)用這個(gè)js方法。
???????? function reference() {
?????????????? var img = document.getElementById("ref");
?????????????? if(typeof(pdt) = = undefined ||? pdt.length = =0) {
????????????????????? img.style.filter = "Gray";
????????????? }else{?? img.onclick="REF_ON()"; }
???????? }
???????? 運(yùn)行后頁(yè)面沒有提示任何js錯(cuò)誤,在pdt不為空時(shí)察看代碼,圖片鏈接中已變?yōu)?<img id = "ref"? onclick = "REF_ON()" src="/reference.tif" width="389" />,說(shuō)明js方法已添加成功,然而點(diǎn)擊圖片時(shí)卻沒有任何反應(yīng),不知為何?
???????? 后和同事討論,將代碼改變?nèi)缦戮蚈K了:
???????? <img id = "ref"? onclick="REF_ON()"? src="/reference.tif" width="389"/>將方法調(diào)用先直接寫入頁(yè)面中,JS方法改變?nèi)缦拢?br />???????? function reference() {
?????????????? var img = document.getElementById("ref");
?????????????? if(typeof(pdt) = = null? ||? pdt.length = =0) {
????????????????????? img.style.filter = "Gray";
????????????????????? img.onclick = null;????????
?????????????? }
???????? }
???????? 兩種方法在邏輯上看沒什么區(qū)別,但最終實(shí)現(xiàn)確不一樣,想請(qǐng)教大家,第一種方法為何不行?奇怪的是JS方法已把onclick成功加入到頁(yè)面中,為什么點(diǎn)擊后沒有反應(yīng)??
???????? 網(wǎng)頁(yè)中存在這樣的一個(gè)數(shù)組,通過(guò)script打出的 <script>var pdt =[1,2];</script>,邏輯是想通過(guò)這個(gè)數(shù)組的長(zhǎng)度來(lái)控制一張圖片的鏈接:<img id = "ref" src="/reference.tif" width="389"/>。
???????? 控制方法如下:在<body onload = "reference()">中調(diào)用這個(gè)js方法。
???????? function reference() {
?????????????? var img = document.getElementById("ref");
?????????????? if(typeof(pdt) = = undefined ||? pdt.length = =0) {
????????????????????? img.style.filter = "Gray";
????????????? }else{?? img.onclick="REF_ON()"; }
???????? }
???????? 運(yùn)行后頁(yè)面沒有提示任何js錯(cuò)誤,在pdt不為空時(shí)察看代碼,圖片鏈接中已變?yōu)?<img id = "ref"? onclick = "REF_ON()" src="/reference.tif" width="389" />,說(shuō)明js方法已添加成功,然而點(diǎn)擊圖片時(shí)卻沒有任何反應(yīng),不知為何?
???????? 后和同事討論,將代碼改變?nèi)缦戮蚈K了:
???????? <img id = "ref"? onclick="REF_ON()"? src="/reference.tif" width="389"/>將方法調(diào)用先直接寫入頁(yè)面中,JS方法改變?nèi)缦拢?br />???????? function reference() {
?????????????? var img = document.getElementById("ref");
?????????????? if(typeof(pdt) = = null? ||? pdt.length = =0) {
????????????????????? img.style.filter = "Gray";
????????????????????? img.onclick = null;????????
?????????????? }
???????? }
???????? 兩種方法在邏輯上看沒什么區(qū)別,但最終實(shí)現(xiàn)確不一樣,想請(qǐng)教大家,第一種方法為何不行?奇怪的是JS方法已把onclick成功加入到頁(yè)面中,為什么點(diǎn)擊后沒有反應(yīng)??