Вызов Javascript функции веб-страницы в веб-просмотре какао - PullRequest
8 голосов
/ 26 апреля 2011

Во-первых, я полный новичок в объективе-c и какао.Я нашел ресурсы, связанные с этим, но ни один из них не показывает, чего я хочу, и я не могу заставить других работать на меня.Что мне нужно, так это действительно тупой пример с окном, содержащим кнопку и веб-представлением, в котором есть HTML-страница с функцией javascript, которая принимает один параметр (строку или что-то в этом роде) и выплевывает его через document.write.(Я знаю javascript).

Затем, когда вы нажмете кнопку за пределами веб-просмотра, он вызовет функцию javascript, и веб-просмотр скажет что-то, из вызова document.write.Если бы кто-то мог собрать такой быстрый пример, я бы это очень оценил!

Спасибо.

Ответы [ 5 ]

16 голосов
/ 26 апреля 2011

Вы можете использовать stringByEvaluatingJavaScriptFromString: для вызова javascript в веб-представлении.

[ webView stringByEvaluatingJavaScriptFromString: @"myJavascriptFunction()" ];

Это не такой полный пример, как вы просили, но полный пример приложения несколько превосходит то, что подходит для StackOverflow.

7 голосов
/ 14 августа 2013

Если вы просто хотите вызвать функцию Javascript, вот способ сделать это:

WebScriptObject *script = [_webView windowScriptObject];
[script callWebScriptMethod:@"jsFunctionWithText" withArguments:@[@"Some text"]];

На вашей HTML-странице вам понадобится следующее:

<script>
function jsFunctionWithText(text)
{
    document.write(text);
}
</script>
4 голосов
/ 08 апреля 2013

Ни одно из предыдущих решений не сработало для меня.Тем не менее, я нашел этот метод в документации Apple Developer , который позволил мне успешно выполнить код JS в моем webView.

Вот пример, который работал для меня в XCode 4.6.1 (OS X 10.8.3):

[[webView windowScriptObject] evaluateWebScript:@"document.write('derp')"];

2 голосов
/ 09 мая 2011

Чтобы заставить WebView работать, посмотрите этот удивительный урок от Lost Decade Games:

Как встроить HTML5 в собственное приложение Mac OSX .

0 голосов
/ 26 апреля 2011

Вы должны попытаться увидеть мой ответ на этот вопрос - Отображение HTML в приложении для iPhone

тогда вы можете использовать javascript как обычный html-стандарт, добавив их в файл проекта XCode.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...