Jquery Mobile MVC3 iPad Web App链接

时间:2012-04-11 16:52:21

标签: asp.net-mvc-3 ipad jquery-mobile mobile-safari

使用JQuery Mobile和MVC3 ASP.NET,在iPad上创建了一个主屏幕书签。 应用程序没有问题,它没有显示safari的栏。 我登录到我的应用并点击了一个链接, LINK OPENS SAFARI,无意内

我的问题是如何防止点击的链接在我的书签应用之外打开? 我试过了:

$(document).bind("pageinit", function () {
    $("a").click(function (e) {
        e.preventDefault();
        $.mobile.changePage($(this).attr('href'));
    });
});

上面的代码似乎应该基于jquery mobile的文档工作。 当我单击链接/按钮时,链接/按钮突出显示但没有错误或页面加载。

另外,另一个问题是为什么当我离开应用程序并返回会话时会死?

2 个答案:

答案 0 :(得分:0)

您链接的此网页是否与应用程序打包在一起?你需要这样做。该应用无法找到它并转到浏览器。

代码本身很好。 http://jsfiddle.net/m35BU/5/

会话变量存储在服务器上......你在谈论一个javascript cookie吗?

如果是这样,除非您为cookie设置了过期日期(mktime()+ 3600 * 7,为期7天),否则它将在应用程序关闭时到期。

答案 1 :(得分:0)

iOS会将您已规定data-ajax =“false”的链接视为应由Safari打开的链接。我在使用jQueryMobile的MVC站点中遇到了同样的问题。我发现this post非常有用,下面的代码在我的应用程序中运行得非常好。

$("a[data-ajax='false']").live("click", function (event) {
    if (this.href) {
        event.preventDefault();
        location.href = this.href;
        return false;
    }
});