如何使用jQuery读取由texture packer生成的嵌套json文件?
如何使用jQuery读取以下深层嵌套json文件如何使用jQuery读取由texture packer生成的嵌套json文件?,jquery,json,nested,texturepacker,Jquery,Json,Nested,Texturepacker,如何使用jQuery读取以下深层嵌套json文件 { "frames": { "a1-0.png": { "frame": {"x":24,"y":20,"w":12,"h":12}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":50,"y":152,"w":12,"h":12}, "sourceSize": {"w":256,"h":192} }, "a1-1.png": {
{
"frames": {
"a1-0.png":
{
"frame": {"x":24,"y":20,"w":12,"h":12},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":50,"y":152,"w":12,"h":12},
"sourceSize": {"w":256,"h":192}
},
"a1-1.png":
{
"frame": {"x":0,"y":194,"w":32,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":39,"y":121,"w":32,"h":44},
"sourceSize": {"w":256,"h":192}
},
"a1-2.png":
{
"frame": {"x":400,"y":194,"w":60,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":60,"y":51,"w":60,"h":112},
"sourceSize": {"w":256,"h":192}
}
}
}
下面是我用来阅读本文的jQuery代码行。但它不起作用。有人能帮我读一下这些元素吗
此处“a1-0.png”无法更改,因为精灵工作表中有400多个图像。这个json文件表示这个精灵表。这是使用名为纹理打包器的软件制作的
jQuery代码如下:
<button id="FrameNumber">Frame Number</button>
<div id="results"></div>
<script>
$(document).ready(function(e) {
var url="sprite/bounce.json";
$("#FrameNumber").click(function(){
$.getJSON(url,function(result){
$("#results").append('<p>'+result+'</p>');
});
});
});
</script>
帧号
$(文档).ready(函数(e){
var url=“sprite/bounce.json”;
$(“#帧号”)。单击(函数(){
$.getJSON(url、函数(结果){
$(“#结果”).append(“”+result+””);
});
});
});
只需使用data.frames[“name”]即可获取数据:
$(document).ready(function(e) {
var url="test.json";
$("#FrameNumber").click(function(){
$.getJSON(url,function(data) {
var f = data.frames["a1-0.png"];
$("#results").append('<p>x='+f.frame.x+' y='+f.frame.y+'</p>');
});
});
});
$(文档).ready(函数(e){
var url=“test.json”;
$(“#帧号”)。单击(函数(){
$.getJSON(url、函数(数据){
var f=data.frames[“a1-0.png”];
$(“#结果”).append('x='+f.frame.x+'y='+f.frame.y+'');
});
});
});
您在此处选择的格式针对查询帧数据进行了优化。如果要迭代所有帧,请使用TexturePacker中的json数组格式。在这种情况下,帧的名称是帧数据的一部分,而不是键。只需使用数据。帧[“名称”]获取数据:
$(document).ready(function(e) {
var url="test.json";
$("#FrameNumber").click(function(){
$.getJSON(url,function(data) {
var f = data.frames["a1-0.png"];
$("#results").append('<p>x='+f.frame.x+' y='+f.frame.y+'</p>');
});
});
});
$(文档).ready(函数(e){
var url=“test.json”;
$(“#帧号”)。单击(函数(){
$.getJSON(url、函数(数据){
var f=data.frames[“a1-0.png”];
$(“#结果”).append('x='+f.frame.x+'y='+f.frame.y+'');
});
});
});
您在此处选择的格式针对查询帧数据进行了优化。如果要迭代所有帧,请使用TexturePacker中的json数组格式。在这种情况下,帧的名称是帧数据的一部分,而不是键。感谢您提供的解决方案。。顺便说一句,在阅读这个答案之前,我已经解决了这个问题。。。这仍然非常有用。。。但是,我不想使用“data.frames[“a1-0.png”]…我只想使用一个快速数组,如..data.frames[0],data.frames[1],data.frames[2]…data.frames[n]…有什么解决方案吗..提前感谢提供的解决方案..顺便说一句。在阅读此答案之前,我已经解决了这个问题…这仍然非常有用…但不是使用“data.frames[“a1-0.png”]。。。我只想要一个像..这样的快速数组。。data.frames[0]、data.frames[1]、data.frames[2]。。。数据帧[n]。。。有什么解决办法吗。。提前谢谢