Re: [問題] 請教一個javascript語法

看板Web_Design作者 ( ^-^)時間20年前 (2004/12/03 23:34), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
你覺得你寫 xxx.onerror=MyErrorFunc(imgName)是什麼意思呢? 沒錯!就是「我要讓xxx.onerror的值等於呼叫MyErrorFunc(imgName)的傳回值 不過你的MyErrorFunc現在沒有傳回值,所以xxx.onerror就變成 undefined啦~ 那你可能就會開始想「那我到底要怎麼把一個函數指定給一個變數呢?」 你可以這樣寫 xxx.onerror=MyErrorFunc 但是這樣就沒有辦法傳值啦~ 所以最終的解法就是想辦法寫一個新的會傳值的函數囉 其實 function 也是物件,可以 new! document.images[imgName].onerror = new Function("myErrorFunc('"+imgName+"');"); ※ 引述《NelsonT (檔案清除手 v1.0)》ꐠ銘言: : 感謝各位,我已找到解法。 : 在 html 裡頭這樣寫: : <img name="haha" onError=myErrorFunc(this.name)> : 在 javascript 這樣寫: : function myErrorFunc(badImage) : { : document.images[badImage].style.dispaly = "none"; : } : 就可以了。 : 可是現在問題來了! : 若我有好幾個 <img>,裡頭都要再寫一次 onError=myErrorFunc(this.name) : 這樣會很麻煩,也讓程式變大很多。 : 我想問的是,有沒有辦法一次指定所有的 <img> 呢? : 推 charto:使用 TKirby 提供的搜尋阿!! 61.66.73.162 12/03 : 我試過以下的程式碼,可是卻失敗了。 : 我的片段html如下 : <img name="img1"> : <img name="img2"> : ... : <img name="img9"> : 而javascript如下 : function myErrorFunc(badImage) : { : document.images[badImage].style.display = "none"; : } : // 以下是設定 error 的片段程式碼 : for(i = 1; i <= 9; i++) : { : imgName = "img"+i; : document.images[imgName].src = "....."; // 這行可以work : document.images[imgName].onerror = myErrorFunc(imgName); // 這行不能work : } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.67 ※ 編輯: TKirby 來自: 140.112.30.67 (12/03 23:59)

220.136.182.218 12/04, , 1F
又學了一招,大感謝:p
220.136.182.218 12/04, 1F
文章代碼(AID): #11i8TlaE (Web_Design)
文章代碼(AID): #11i8TlaE (Web_Design)