如何在UIWebView上运行HTML + JavaScript文件。 。?

每个人,

我有一个HTML页面,其中包含一个显示动物动画的Javascript函数..我已经将它添加到xcode项目中。

现在,当我在UIWebView中加载此文件时,它看起来很完美。下面是将HTMl文件加载到UIWebView的代码

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"elephant-animation" ofType:@"html"] isDirectory:NO];
        NSURLRequest *req = [NSURLRequest requestWithURL:url];
        [self performSelectorOnMainThread:@selector(startWebLoad3:) withObject:req waitUntilDone:YES];

-(void)startWebLoad3:(NSURLRequest *)request
{
    [wbView3 loadRequest:request];
    [wbView3 setBackgroundColor:[UIColor clearColor]];
    wbView3.scrollView.scrollEnabled = NO;
    [wbView3.scrollView setBackgroundColor:[UIColor clearColor]];
    [wbView3 setOpaque:NO];
}

但我有6页。 当开始加载每个页面与单独的UIWebView时,它会转到内存警告..并给我这样的错误。

void SendDelegateMessage(NSInvocation*): delegate (webView:didFinishLoadForFrame:) failed to return after waiting 10 seconds. main run loop mode: kCFRunLoopDefaultMode

如果我只运行一个页面而不是完美运行,但是当我开始加载所有或一个接一个的时候,它会与内存警告一起崩溃。

让我知道是否有人得到任何解决方案..

我坚持这个问题..

谢谢,


最后我得到了解决方案。经过长时间的研发,得到了一些有效的解决方案

"JavaScript execution time is limited to 10 seconds for each top-level entry point. If your script executes for more than 10 seconds, the web view stops executing the script"

这就是为什么我无法加载UIWebView中的HTML页面的原因..和iPad处理高达3 MB的数据加载仅在应用程序启动..而我已经使用了超过它..

所以,我根据要求更改JavaScript,现在工作..

感谢您成为它的一部分..


static NSInteger currentIndex = 0;
if (currentIndex < 99) {
    currentIndex++;
}
NSString *path = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"file%d",currentIndex] ofType:@"html"];
NSFileHandle *readHandle = [NSFileHandle fileHandleForReadingAtPath:path];
NSString *htmlString = [[NSString alloc] initWithData: 
                        [readHandle readDataToEndOfFile] encoding:NSUTF8StringEncoding];
[self.myWebView loadHTMLString:htmlString baseURL:nil];

我希望它会起作用


在下图中,一个用于添加HTML,Javascript和CSS文件,另一个用于一般的XCode文件。

用于HTML,Javascript和CSS文件

将文件添加到XCode时:

在这里输入图像描述

这对我有用..! 希望它能为所有人工作。 谢谢!!

链接地址: http://www.djcxy.com/p/59187.html

上一篇: How to run HTML+javascript file run on UIWebView . .?

下一篇: How can I track/fix memory leak in tornado