一个 json 请求到多个 DOM 目标 - 如何实现?
我有一个“列表”,我想用 background-json 请求填充它。 项目有不同的标题,流量应该最小(移动网络应用程序), DOM 结构类似于:
<div id="deckStart">
<div id="cardContacts">
<h2>Contacts</h2>
<div id="cardContactsContent">nothing here until JSON</div>
</div>
<div id="cardTodo">
<h2>To do</h2>
<div id="cardTodoContent">nothing here until JSON</div>
....
//EDIT
OK,这有效:
x$(window).on('load', function() {
x$(window).xhr('json.txt', {
async: true,
callback: function() {
var t = eval('(' + this.responseText + ')');
for(var key in t) {
var obj = t[key];
x$('#' + key).html('inner',obj);
}
}
});
但是为什么 JSON.parse 在 chrome 上不起作用? Eval 看起来很脏..
//end edit
用一个 JSON 请求填充相应内容 div 的最有效方法是什么?
- 临时加载到 JS 数组中?
- 临时加载到隐藏的 DOM 部分?
- 一些正则表达式技巧或其他我想不到的?
网络稳定性/速度不可靠。
问候,
I'm having a "list" that I want to populate with a background-json request.
Items have different headings and traffic should be minimal (mobile webapp),
DOM-structure something like:
<div id="deckStart">
<div id="cardContacts">
<h2>Contacts</h2>
<div id="cardContactsContent">nothing here until JSON</div>
</div>
<div id="cardTodo">
<h2>To do</h2>
<div id="cardTodoContent">nothing here until JSON</div>
....
//EDIT
OK, this works:
x$(window).on('load', function() {
x$(window).xhr('json.txt', {
async: true,
callback: function() {
var t = eval('(' + this.responseText + ')');
for(var key in t) {
var obj = t[key];
x$('#' + key).html('inner',obj);
}
}
});
but why doesn't JSON.parse work on chrome? Eval seems dirty..
//end edit
What would be the most efficient way to populate the respective content-divs with one single JSON-request?
- Temp load into JS-array?
- Temp load into hidden DOM-part?
- Some regexp-trick or other I cannot think of?
The network stability / speed is unreliable.
regards,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你能在那里得到 jQuery 吗?您可以使用 jQuery 轻松完成...
Can you get jQuery on there? You could do it in a heartbeat with jQuery...