1

我有一个WebView页面已经加载的地方webview.loadUrl(URL);

还有大量的 javascript 函数,例如:

    function myFunction1() {// some code} 
    function myFunction2() {// some code}
    function myFunction3() {// some code}

我需要将所有功能预加载到WebView(当页面已经加载时),然后从应用程序中一一执行它们webview.loadUrl("javascript: myFunction1()");webview.loadUrl("javascript: myFunction3()");

这可以预加载库而不是在html代码中附加 js<script src="js/myLibrary.js"></script>吗?

4

1 回答 1

1

这并不难。看,起初你应该使用console.log. 它可能会帮助您了解脚本执行期间发生的情况:

console.log('This message should appear as a debug message in Logcat.');

将其放入javascript,您将在以下位置收到此消息LogCat

11-15 12:31:10.652: I/Web Console(16214): This message should appear as a debug message in Logcat.:1

然后,您的问题:您必须在行中加载您的 javascript 函数:

wv.loadUrl("javascript: var globalVar; function init() {globalVar=1;}; function global() {init(); var gl = '2'; console.log(globalVar);}");

,这里我们有init()初始化和全局的函数globalVar,它初始化所有变量并在 logcat 中打印结果!

预加载后,您可以执行任何功能:

wv.loadUrl("javascript: global();");

你会在 logcat "1" 中看到!而这一切!

于 2013-11-15T10:47:36.477 回答