Jquery mobile 打开phonegap程序内的链接

Jquery mobile 打开phonegap程序内的链接,jquery-mobile,cordova,Jquery Mobile,Cordova,大家好,我正在制作一个phonegap+jquery移动程序,问题是我在phonegap中有一个由外部站点加载的列表视图,在列表的叶子中有一个a href指向一个包含我希望在程序中打开的html的站点。当我点击叶子时,它会在手机浏览器中打开链接,而不是phonegap程序,我想让它打开程序中的链接,而不是手机浏览器 我已经试过rel=external和data ajax=false,但是所有的东西都失败了,在移动浏览器中打开了,有人能帮我吗?你可以试着放一个iframe并打开其中的链接?以下是你

大家好,我正在制作一个phonegap+jquery移动程序,问题是我在phonegap中有一个由外部站点加载的列表视图,在列表的叶子中有一个a href指向一个包含我希望在程序中打开的html的站点。当我点击叶子时,它会在手机浏览器中打开链接,而不是phonegap程序,我想让它打开程序中的链接,而不是手机浏览器


我已经试过rel=external和data ajax=false,但是所有的东西都失败了,在移动浏览器中打开了,有人能帮我吗?

你可以试着放一个iframe并打开其中的链接?

以下是你在Android中的做法:


iOS也有类似的机制。您可以在PhoneGap中指定不应在外部浏览器中启动的外部URL。plist使用PhoneGap的childbrowser插件。这将只打开应用程序内部的链接。

我试图通过将iFrame嵌入应用程序而不是在浏览器中打开来完成类似的事情,这为我解决了这个问题。 在Xcode中,修改AppDelegate.m文件, 将shouldStartLoadWithRequest部分替换为 为此:

- (BOOL)webView:(UIWebView *)theWebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSURL *url = [request URL];
    if ([[url scheme] isEqualToString:@"http"] || [[url scheme] isEqualToString:@"https"]) {
        return YES;
    }
    else {
        return [ self.viewController webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType ];
    }
}

这是针对Cordova 1.5.x的,在iOS上显然

不,我不能使用Iframe,我需要将phonegap程序的内容更改为它链接的页面,我在某些部分使用了jquery的加载功能,但我不知道如何在jquery移动列表视图中使用它。