對不起,標題太模糊了,我不確定最好的方式來描述這個短標題。我的朋友一直在幫助我爲自己開發這個簡單的網站。這是玩自然放鬆的聲音。jQuery .css背景圖片預加載
下面是代碼我的朋友一樣,現在我會問他,但他是在離開英國各地騎自行車,並將會消失很長一段時間..
$(function() {
var forest = document.getElementById("forest");
var dusk = document.getElementById("dusk");
var water = document.getElementById("water");
var storm = document.getElementById("storm");
var playing = "";
var muted = false;
$('#mute').on('click', function(e) {
$('.icon').toggleClass("off");
e.preventDefault();
});
$("#mute").click(function() {
if(!muted) {
forest.volume = 0;
dusk.volume = 0;
water.volume = 0;
storm.volume = 0;
muted = true;
} else {
forest.volume = 1;
dusk.volume = 1;
water.volume = 1;
storm.volume = 1;
muted = false;
}
});
$('.sound').click(function() {
switch($(this).find("audio").prop("id")) {
case "forest":
if(playing == "forest") {
fade(forest);
return;
}
$('#panda').fadeTo('slow', 0.1, function() {
$(this).css('background-image', 'url(images/forest.jpg)');
}).fadeTo('slow', 1.4);
playing = "forest";
fade(forest);
break;
case "dusk":
if(playing == "dusk") {
fade(dusk);
return;
}
$('#panda').fadeTo('slow', 0.1, function() {
$(this).css('background-image', 'url(images/dusk.jpg)');
}).fadeTo('slow', 1.4);
playing = "dusk";
fade(dusk);
break;
case "water":
if(playing == "water") {
fade(water);
return;
}
$('#panda').fadeTo('slow', 0.1, function() {
$(this).css('background-image', 'url(images/water.jpg)');
}).fadeTo('slow', 1.4);
playing = "water";
fade(water);
break;
case "storm":
if(playing == "storm") {
fade(storm);
return;
}
$('#panda').fadeTo('slow', 0.1, function() {
$(this).css('background-image', 'url(images/rain.jpg)');
}).fadeTo('slow', 1.4);
playing = "storm";
fade(storm);
break;
}
console.log(playing);
});
我想'我主要是因爲我是一名設計師,但這是一個值得關注的問題。
$(this).css('background-image', 'url(images/rain.jpg)');
或者任何類型的聲音,你可以看到代碼只是倍數。
現在基本上當你從一個背景切換到另一個時,它不會第一次平滑地加載背景圖像,反正它可以平滑加載嗎?因此預加載.css更改?我不知道,對不起,我不清楚這是如何工作的。
任何意見,真的很感激。建議或其他。
的可能重複[jQuery的預加載背景圖片?](http://stackoverflow.com/questions/9379855/preload-background-images-with-jquery) – 2014-10-10 14:58:27
可能,但我不太明白他們的答案,我有點理解這可能適用於多個div,但我正在改變不同的背景圖像相同的divID? – HeyImArt 2014-10-10 15:02:21
一個簡單的方法,它只是將這個圖像包含在寬度和高度爲1的頁面中,因此圖像將準備好用於切換。無論如何,由David Mulder鏈接的解決方案是最佳做法,但是如果您沒有足夠的技能,只需在頁面底部添加一個即可。 – MrPk 2014-10-10 15:05:49