該解決方案是根據事實,即瀏覽器不能夠訪問的文件夾/文件系統創建的。
Javascript can not access the filesystem。這必須通過服務器腳本完成,然後將其提供給javascript。
當我加載所有不同的瓷磚時,我在構建遊戲引擎時遇到了類似的問題。我結束了這樣做。
該解決方案在實施時會造成兩個問題。
- 你必須定義圖像的大寫金額的「NrofTiles」陣列
- 的圖像必須被命名爲喜歡tile1,tile2 ... tile9在這樣你就可以
增量的路徑給他們。
的typeOfTiles [typeCounter]就在那裏給我訪問不同的文件夾,在我的情況下,我的地磚,草,房屋,水等。
for(var i = 0; i <= nrofTiles.length; i++)
{
for(var x = 0; x <= nrofTiles[i]; x++)
{
console.log
("Fetching tile "+(x + 1)+" of " + 14);
img = new Image();
//My path
img.src = 'Images/Cart/' + typeOfTiles[typeCounter] + '/' + (x + 1) + '.png';
imgArray.push(img);
var intervalFunctionen = function() {
alert("calls back here");
};
}//end for loop!
}end outer for loop!
當一切都加載(瓷磚),你這樣做來改變背景圖片。
這是一個不斷變化的身體背景的例子。你可以用一個ID讓鏈接說「iamthelink」。
HTML
<a href="#" id="iamthelink">Change BG</a>
JAVASCRIPT
var link = document.getElementsById('iamthelink');
link.onclick= function() {
var body = document.getElementsByTagName('body')[0];
body.style.backgroundImage = 'url(http://localhost/background.png)';
}
你通常用不上從瀏覽器 – adeneo
任何文件夾,你能否解釋一下你想如何的功能爲這些背景的工作? –
這聽起來像是從_server_獲取文件列表的問題。這是不太可能的。 – Eevee