可能很简单的问题,我之前从未这样做过......我正在试图弄清楚如何填充jQuery插件属性对象/数组或者你称之为...的正常数组。 / p>
var imageArray = new Array();
imageArray = ['images/1000x800.png','images/495x880.png','images/600x800.png'];
所以,我试图把它变成......带有未知数量图像的插件属性“图像”......
jQuery(function($){
$.myPlugin({
slides : [
{image : 'images/1000x800.png'},
{image : 'images/495x880.png'},
{image : 'images/600x800.png'},
//...etc...
]
});
});
这是我正在尝试做的一个例子......虽然我不知道正确的语法......
jQuery(function($){
$.myPlugin({
slides : [ for(var i=0; i<imageArray.length; i++) {
image = imageArray[i];
}
]
});
});
任何帮助表示赞赏!!!
答案 0 :(得分:2)
使用$.map
:
var imageArray = ['images/1000x800.png','images/495x880.png', ...];
$.myPlugin({
slides: $.map(imageArray, function (el) { return {image: el}; });
});
答案 1 :(得分:1)
这应该转换它......
var imageArray = ['images/1000x800.png','images/495x880.png','images/600x800.png'];
for(var i=0; i<imageArray.length; i++) {
imageArray[i] = {'image': imageArray[i]};
}
虽然注意,这将转换原始数组。如果您想要第二个,只需使用var new = []
和new.push()
循环内的对象创建一个新的。
答案 2 :(得分:0)
为什么不定义你需要的数组而不是定义一个并转换?
var imageArray = [
{ image: 'images/1000x800.png' },
{ image: 'images/495x880.png' },
{ image: 'images/600x800.png' }
];
jQuery(function($) {
$.myplugin( { slides: imageArray } );
});