2
我可以在兩個變量(例如var path = css/image/
和var urlpath = /pic/funny/
)中分別具有圖像文件夾路徑和url路徑,並將它們分別添加到每個圖像和url之前,這樣我就不必重複var picData
中每個圖像的路徑?如何使用圖像文件夾路徑的使用變量
Array.prototype.shuffle = function() {
var s = [];
while (this.length) s.push(this.splice(Math.random() * this.length, 1));
while (s.length) this.push(s.pop());
return this;
}
var picData = [
['img1','url_1'],
['img2','url_2'],
['img3','url_3'],
['img4','url_4'],
['img5','url_5'],
['img6','url_6'],
['img7','url_7']];
picO = new Array();
randIndex = new Array(); //array of random indexes
for(i=0; i < picData.length; i++){
picO[i] = new Image();
picO[i].src = picData[i][0];
picO[i].alt = picData[i][1];
randIndex.push(i);
}
randIndex.shuffle();
window.onload=function(){
var mainImgs = document.getElementById('carouselh').getElementsByTagName('img');
for(i=0; i < mainImgs.length; i++){
mainImgs[i].src = picO[randIndex[i]].src; //assign a random image
mainImgs[i].parentNode.href = picData[randIndex[i]][1];
mainImgs[i].alt = picData[randIndex[i]][1];
}
}
我試過類似mainImgs[i].src = path.picO[randIndex[i]].src;
但我無法獲得正確的語法。
@Tomanow: Quote:*我曾嘗試類似'mainImgs [i] .src = path.picO [randIndex [i]]。src;'[...] *。 – user13500
它的工作原理。問題解決了!我必須把變量放在'window.onload = function(){' – RedGiant
@ user35295:你也可以把你的腳本放在頁面底部或者在文檔上使用'addEventListener(「load」)'。當你使用jQuery時,你可以使用'$(document).ready(function(){/ *把你的代碼放在這裏獲取DOM元素。 http://api.jquery.com/ready/ – user13500