UIWebView + пользовательский объект JavaScript - PullRequest
1 голос
/ 01 февраля 2011

Я использую UIWebView с локальным jquery и скрипт, который определяет функцию, например:

function myFunc() {
    var myVar;

    function info() {
        alert('info');
    }
}

Что я не могу выполнить, так это простая задача:

var myfunc = new myFunc();
myfunc.info();

в UIWebView.Как я могу создать новый объект и вызвать функцию этого объекта, используя:

[webViewObject stringByEvaluatingJavaScriptFromString:@"myfunc.info();"];

Я борюсь с этим.

1 Ответ

0 голосов
/ 01 февраля 2011

Только что решено. Достаточно реализовать протокол в используемом им viewcontroller, затем объявить:

webView.delegate = self;

и в:

-(void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSLog(@"webViewDidFinishLoad");
    [webView stringByEvaluatingJavaScriptFromString:@"var obj = new myObject();"];
}

позже:

-(void)myAwesomeAction
{
    [webView stringByEvaluatingJavaScriptFromString:@"obj.func();"];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...