2

我有一个简单的应用程序,它只不过是NSURLRequestUIWebView. 如果我使用模拟器或在设备上加载它,jQuery 方法$(document).ready不会触发。我创建了一个测试页面来验证这一点:

https://dl.dropbox.com/u/3660978/webviewtest.html

这是加载 WebView 的代码:

-(void)loadWebView {
    NSURL *url = [NSURL URLWithString:@"https://dl.dropbox.com/u/3660978/webviewtest.html"];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [self.webView loadRequest:request];
}

#pragma mark - WebView Delegate Method
-(void)webViewDidFinishLoad:(UIWebView *)webView {
    NSLog(@"WebView is done loading");
}

- (void)viewDidLoad {
    [super viewDidLoad];
    [self loadWebView];
}

如果我使用 iPad 上的 Safari 应用程序加载它,它工作正常(我收到两个警报),每当我使用模拟器或同一个 iPad 运行应用程序时,它都无法调用$(document).ready(我只收到第一个警报)。

我尝试过同时使用 iOS 5 和 iOS 6.1 模拟器。是什么赋予了?

4

1 回答 1

1

jQuery 的路径不完整。在您的保管箱中,它开始://而不是http://,因此 jQuery 不会加载,因此对 document.ready (在 jQuery 中)的调用不会运行。

另一种方法是将 jQuery 库嵌入到包中并在本地引用它。

于 2013-03-18T20:38:36.123 回答