使用本地文件JSON,我通过$.getJSON
获取数据并使用jQuery mobile输出
$('body').off('tap').on('tap', 'ul li', function(event) {
var jqxhr = $.getJSON("one.json", function(data) {
console.log("success");
alert(data.name + " " + data.one);
$("#json").html(data.name + " " + data.one);
}).done(function() {
console.log("second success");
$("#d1").html("second success");
}).fail(function(jqxhr, textStatus, error) {
var err = textStatus + ', ' + error;
console.log("Request Failed: " + err);
$("#d2").html("Request Failed: " + err);
}).always(function() {
console.log("complete");
$("#d3").html("complete");
});
});
这在计算机和HTC上运行良好,但在三星设备上它无法正常工作。在三星没有错误,输出空div
答案 0 :(得分:1)
阅读上面的评论,我相信你的代码可能真的可以在一台设备上运气,并且可能会失败很多。
您使用的“点按”看起来无效(并且其使用会带有警告,因此有限制)。 http://api.jquerymobile.com/tap/
警告:请谨慎使用
Tap使用vclick,因此应谨慎使用 触控设备。有关详细信息,请参阅vclick API documentation。
根据我的理解,在点击后,应该出现功能 - 不参考任何特定标签。请注意上面代码中第一行与下面代码之间的区别。
$('body').off('tap').on('tap', function(event) {
var jqxhr = $.getJSON("one.json", function(data) {
console.log("success");
alert(data.name + " " + data.one);
$("#json").html(data.name + " " + data.one);
}).done(function() {
console.log("second success");
$("#d1").html("second success");
}).fail(function(jqxhr, textStatus, error) {
var err = textStatus + ', ' + error;
console.log("Request Failed: " + err);
$("#d2").html("Request Failed: " + err);
}).always(function() {
console.log("complete");
$("#d3").html("complete");
});
});
答案 1 :(得分:0)
if (currentapiVersion >= android.os.Build.VERSION_CODES.JELLY_BEAN){
webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
}