Javascript JS-JSON/构造函数中的数组传递变量(自定义库)
如果我按照文档进行操作,设置数据输入的正确方法是:Javascript JS-JSON/构造函数中的数组传递变量(自定义库),javascript,arrays,json,object,constructor,Javascript,Arrays,Json,Object,Constructor,如果我按照文档进行操作,设置数据输入的正确方法是: $("#container").flipBook({ css:"css/style.css", pages:[ { src:"images/book1/page1.jpg", thumb:"images/book1/thumb1.jpg", title:"Cover", htmlContent:'' }, { src:"images/bo
$("#container").flipBook({
css:"css/style.css",
pages:[
{
src:"images/book1/page1.jpg",
thumb:"images/book1/thumb1.jpg",
title:"Cover",
htmlContent:''
},
{
src:"images/book1/page2.jpg",
thumb:"images/book1/thumb2.jpg",
title:"Page two"
},
etc.. etc..
],
btnNext:true,
btnPrev:true,
btnZoomIn:true,
btnZoomOut:true,
other parameters...
所以,我想动态地插入数据。
我声明一个新数组,然后滚动xml文件中的所有页面,创建一个对象,最后将该对象推到声明的第一个数组中。
var page=新数组()
我试着把page
,[page]
,JSON.parse(JSON.stringify(page))
。我不知道如何在构造函数中传递变量
这似乎是一个很简单的问题,但我找不到任何解决办法。
请帮帮我:)我想这应该行得通:
var pages = [];
$(xml).find('page').each(function(i) {
var singlepage = {
src: "image1.jpg",
thumb: "thum1.jpg",
title: "Page " + ++created;
};
pages.push(singlepage);
});
您只需传递页面
对象:
$("#tabs-" + id + "").flipBook({
pages: pages
// ...
});
主要区别:page.push(JSON.stringify(singlepage));->页面推送(单页);对吧?:)@FabioSorre:没错,因为您需要一个对象数组,而stringify会将一个对象转换为JSON字符串,这在这里是不需要的。@FabioSorre:我建议这样做。(在使用一个不熟悉的函数之前一定要阅读文档!)@FabioSorre:这完全没问题,问题也没问题,格式也很好,所以别忘了检查这个方法的作用,因为你可能需要知道,有一天,知道数组、对象和json字符串之间的区别总是很好的;)另外,如果你的问题解决了,别忘了接受andrusieczko的答案@FelixKling谢谢你的建议,我知道stringify做什么;)我使用它是因为之前我需要itChange
page.push(JSON.stringify(singlepage))代码>到页面。推送(单页)代码>和页面:页面,
应该可以正常工作<代码>JSON.stringify
将对象转换为字符串。但是您需要一个对象,所以不要转换它。显然,从我看到的情况来看,pages
属性的预期输出是一个对象数组,因此只需删除JSON.stringify
并设置pages:page
$("#tabs-" + id + "").flipBook({
pages: pages
// ...
});