我正在整合所有JSON调用。我从$.getJSON
这个电话中取出了所有内容,并确认我的页面仍然有效,但是当我将附加和列表视图删除时,内容永远不会出现。
这有效:
$.getJSON("data/rides.json",
function(data){
$('#myRideList').append( rideList.join(' ') );
$('#myRideList').listview('refresh');
});
但这不是:
// $.getJSON("data/rides.json",
// function(data){
$('#myRideList').append( rideList.join(' ') );
$('#myRideList').listview('refresh');
// });
答案 0 :(得分:5)
您可能在DOM准备好之前运行代码。
getJSON
版本将异步运行,为DOM提供加载的机会。
第二个版本将立即运行。
您可以将代码放在.ready()
处理程序中,以确保DOM已准备就绪。
$(function() {
// $.getJSON("data/rides.json",
// function(data){
$('#myRideList').append( rideList.join(' ') );
$('#myRideList').listview('refresh');
// });
});
我上面使用的语法是这样的快捷方式:
$(document).ready(function() {
// ...
});
最简单的解决方案往往是最好的。正如@T.J.Crowder所指出的那样,将您的脚本放在页面底部(或至少在所需元素之后的页面上的某个位置)的尝试和真实技术很简单,并且不需要 - 引擎盖技巧。
<body>
<!-- your HTML markup -->
<script type="text/javascript" src="http://example.com/my/script.js"></script>
</body>