2012-09-27 38 views
1

我與CrossSlide jQuery plugin工作和文檔顯示下面的代碼:如何傳遞的JavaScript對象,而不是手動鍵入圖像名稱

<script> 
    $(function() { 
    $('#slideshow').crossSlide({ 
     sleep: 2, 
     fade: 1 
    }, [ 
     { src: 'picture1.jpg' }, 
     { src: 'picture2.jpg' }, 
     { src: 'picture3.jpg' }, 
     { src: 'picture4.jpg' } 
    ]) 
    }); 
</script> 

我想要做的是傳遞對象的數組src屬性而不是手動傳遞圖片。我已經能夠創建一個對象,但我不確定是否有辦法做到這一點。

Javascript是否提供了任何方法/方法來獲取對象,並可能在運行時展開等?

如果您認爲有另一個插件,我應該看看,我接受建議。

+2

*我想要做的就是傳遞一個帶有src屬性的對象數組* *這正是你正在做的。 – Quentin

+1

「*帶有src屬性的對象數組* *」與示例代碼不完全一樣嗎?你想做什麼? – Chad

+1

我希望你能夠重述和澄清你的問題。我知道我不明白你想要什麼,並且我留下了其他人留下評論(至今)的印象。目前我假設你想讓jQuery爲你組裝對象數組,以防止你必須手動組裝那些對象數組? –

回答

1

如果我正確地理解了您的問題,其他人所說的內容令人困惑,您希望動態創建具有src屬性的Array對象。我假設你會將這些圖像存儲在數據庫中,並想要一種動態獲取它們並將它們添加到幻燈片中的方法。要做到這一點的方法之一是這樣的:

var data = []; 

function buildImagesArray(array) { 
    // get the images you want from somewhere, like a database perhaps? 
    var images = methodToGoGetImages(); 
    // iterate over the images 
    images.forEach(function (img) { 
    // create new objects with a src property 
    var imageObj = {}; 
    // add the path of the image as the value of the src property 
    imageObj.src = img.url; 

    // push this object into the data Array 
    array.push(imageObj); 
    }; 

} 

buildImagesArray(data); 

$(function() { 
    $('#slideshow').crossSlide({ 
    sleep: 2, 
    fade: 1 
    }, data) 
}); 

我留下了一些實施細節進行了簡短但希望你的想法。

+0

謝謝 - 我意識到現在我不是很清楚,但是,我所問的問題就是你的理解。你的回答幫助我更清楚地理解這一點。 – Aliasger

+0

太棒了。我很高興能夠提供幫助。 – richoffrails

相關問題