我想把JS的背景圖像放在div上,並在鼠標上點擊更改這些圖像。我試圖這樣做:用JS更改div背景圖像
window.onload; {
var replies = document.getElementsByClassName("reply-wrapper");
var retweets = document.getElementsByClassName("retweet-wrapper");
var favs = document.getElementsByClassName("fav-wrapper");
for (var i = 0; i < replies.length; i++) {
replies[i].style.backgroundImage = "url(images/reply.png);";
}
for (var i = 0; i < retweets.length; i++) {
retweets[i].style.backgroundImage = "url(images/retweet.png);";
}
for (var i = 0; i < favs.length; i++) {
favs[i].style.backgroundImage = "url(images/favorite.png);";
}
}
但由於某種原因,它將無法正常工作。適當的div有正確的類,並將它們添加到收集工作正常,但放置圖像本身不起作用。我究竟做錯了什麼? P.S.想用純JS編寫它,不要使用jQuery。 P.P.S出於某種原因,使用innerHTML放置圖像效果很好。爲什麼?
謝謝,它工作得很好。也許,你可以解釋一下,爲什麼這樣做;打破鏈接? AFAIK,它應該在CSS屬性聲明後... ...也許,你可以幫我解決另一個問題 - 我想添加這樣的代碼,但它不會工作:回覆[i] .onMouseOver = function(){ 回覆[i] .style.backgroundImage =「url('images/reply_hover.png)」; }我又在做什麼錯了? –
@TristanTzara在你的函數中,你應該將它改爲** this.style.backgroundImage **,而不是**回覆[i] .style.backgroundImage ** – rottenoats