3

我正在使用 HTML5、CSS3、JavaScript 和 jQueryMobile 制作一个移动 Web 应用程序,并使用Phonegap.

我是所有网络事物的新手,我想知道,当我将 jQueryMobile 用于 UI 时,我可以使用 jQuery api 进行 Ajax 调用,还是 jQueryMobile 有它自己的工具。

我需要使用 Ajax 与外部 Web 服务交互,我将从数据库中获取(获取)和更新(获取/发布)。

换句话说,jQueryMobile 是否支持所有 jQuery api,或者我是否还必须在我的应用程序中单独包含 jQuery。

4

1 回答 1

6

使用/$.ajax创建AJAX调用时, jQuery 函数是标准的。jQueryjQuery Mobile

工作jsFiddle示例:http: //jsfiddle.net/Gajotres/jLdFj/

$('#index').live('pagebeforeshow',function(e,data){ 
    $.ajax({url: "http://api.themoviedb.org/2.1/Movie.search/en/json/23afca60ebf72f8d88cdcae2c4f31866/The Goonies",
        dataType: "jsonp",
        jsonpCallback: 'successCallback',
        async: true,
        beforeSend: function() {
            $.mobile.showPageLoadingMsg(true);
        },
        complete: function() {
            $.mobile.hidePageLoadingMsg();
        },
        success: function (result) {
            ajax.parseJSONP(result);
        },
        error: function (request,error) {
            alert('Network error has occurred please try again!');
        }
    });         
});

有几点需要考虑:

  • $.ajax在页面转换期间不应使用调用,因为可能会出现页面闪烁
  • 通过调用动态生成的所有数据AJAX必须随后增强为页面标记,这是我关于此主题jQuery Mobile的博客文章。或者可以在这里找到。
  • 显示动态生成的内容时,必须在正确的页面事件期间附加它,最好的一个是pageboforeshow事件。要了解有关jQuery Mobile页面事件的更多信息,请查看此文章
于 2013-02-22T09:38:36.697 回答