Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用于加载动态JSON数据的JQuery mobile事件_Javascript_Jquery_Ajax_Json_Jquery Mobile - Fatal编程技术网

Javascript 用于加载动态JSON数据的JQuery mobile事件

Javascript 用于加载动态JSON数据的JQuery mobile事件,javascript,jquery,ajax,json,jquery-mobile,Javascript,Jquery,Ajax,Json,Jquery Mobile,我刚刚阅读了jquerymobile1.3api文档事件处理,对于要使用的适当事件有点不知所措 基本上,当我的应用程序第一次使用AJAX启动时,我希望我的应用程序能够加载带有加载图像的博客文章。我只能想到以下事件,但不确定哪一个最适合我的需要: $( document ).on('pagecreate' , '#blogposts', function () { $.ajax({ //Get data from server }); }); $( document ).

我刚刚阅读了jquerymobile1.3api文档事件处理,对于要使用的适当事件有点不知所措

基本上,当我的应用程序第一次使用AJAX启动时,我希望我的应用程序能够加载带有加载图像的博客文章。我只能想到以下事件,但不确定哪一个最适合我的需要:

$( document ).on('pagecreate' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

$( document ).on('pagebeforecreate' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

$( document ).on('pagebeforeload' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

$( document ).on('pagebeforeshow' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

$( document ).on('pagecreate' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

$( document ).on('pageinit' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

$( document ).on('pageshow' , '#blogposts', function () {
    $.ajax({
    //Get data from server
    });
});

虽然理论上可以使用其中的任何一种,但通常最好的选择是使用DocumentReady。这样,无论响应时间有多长或短,只要数据从服务器返回,DOM就可以被操作/注入数据。您可以非常轻松地绑定到这一点:

$(document).ready(function () {
    $.ajax({
        // get data from server
        success: function (data) {
            $('#blogposts').text(data); // or however you want to inject the data
        }
    });
});

我的理解是,从技术上讲,如果在加载和运行文档时将JS放在页面底部,那么使用document.ready会对性能造成轻微影响,因为它是从上到下加载的。我看不出有任何理由不使用
$(document).ready
,除非您确实存在明显的性能问题。