Re: [問題] 用javascript更改連結背景圖

看板Web_Design作者 (you stay there)時間16年前 (2009/05/11 13:01), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/3 (看更多)
感謝thoilyu的提醒 我發現我回文的寫法的確抓不到 剛剛又找了些資料 有找到方法囉! 因為單行實在太長,所以我有簡化一些變數名稱 (汗) var i; var t=''; var o=document.getElementsByTagName('a'); for(i=0;i<o.length;i++) { t+=document.defaultView.getComputedStyle(o[i],null). \\這邊code太長有斷行 getPropertyValue('background-image')+'<br>'; } document.getElementsByTagName('body')[0].innerHTML+='<font>'+t+'</font>'; 話說那個 background 真是搞死我也 因為用 getPropertyValue('background') 去抓一直是空值 爬了一堆資料 猜想可能 {background: transparent url() no-repeat scroll 0 0} 是簡化寫法 於是改用 background-image 來抓 結果就OK了 原來是我的CSS沒學好 (遮臉) 不過這個method是read-only 所以只能拿來判斷用 但透過判斷抓出目標<A>,再來針對它做修改應該也是可行方案 此為FireFox解法 IE可以用currentStyle直接抓 ※ 引述《No (you stay there)》之銘言: : 可以用getAttribute抓 : 以你舉例的 http://www.yahoo.com/ 這頁來看 : 改成這樣,先把結果列出來,會在網頁最下面 : var i; : var temp=''; : var divbacks = document.getElementsByTagName('a'); : for(i=0;i<divbacks.length;i++) : { : temp+=divbacks[i].getAttribute('style')+'<br>'; : } : document.getElementsByTagName('body')[0].innerHTML+='<font>'+temp+'</font>'; : 結果這頁沒有<A>有套用到你舉例的那個CSS @@ : 不過至少style的值可以整個抓出來 : 再用regex去match or test就好 : ※ 引述《thoilyu (oil)》之銘言: : : 假設像是下面的這個網頁 : : http://www.yahoo.com/ (美國版的) : : 想用另外加一個script 用像greasemonkey的方式 : : 去更改它前面那些小圖示的圖片 : : 看了一下他的code發現他是用 css 類似以下寫法 : : a : : { : : background:transparent url(http://l.yimg.com/a/i/ww/sp/trough_2.0_062308.gi : : no-repeat scroll 0 0; : : } : : 那我寫了一個script要去抓出他的圖片並更改 : : var divbacks = document.getElementsByTagName('a'); : : if(divbacks.length > 0) : : { : : for(i=0;i<divbacks.length;i++) : : { : : repex = /^\S+.(gif|jpg|jpeg|png)$/i; : : if(divbacks[i].style.background) : : { : : alert("我有跑進來啦啦啦"); : : .... : : //更換圖片 : : divbacks[i].style.background = XXXX; : : ... : : } : : else if(divbacks[i].background) : : { : : ... : : alert("我有跑進來啦啦啦"); : : //更換圖片 : : ..... : : } : : } : : } : : 可是我卻完全抓不到值 : : 跑不出 "我有跑進去啦啦啦" 這些字 : : 我不知道是哪裏寫錯了 : : 可以麻煩教學一下嗎 : : 謝謝 m(_ _)m -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.231.3.208 ※ 編輯: No 來自: 125.231.3.208 (05/11 13:22)

05/11 14:24, , 1F
太感謝了...這樣的確可以解...謝謝 m(_ _)m
05/11 14:24, 1F
文章代碼(AID): #1A1x4rr_ (Web_Design)
文章代碼(AID): #1A1x4rr_ (Web_Design)