我想在webview中使用本机加载自定义html,它正在为简单的html工作,但我无法弄清楚如何从js文件加载javascript到webview,它看起来像什么都没有发生。
这是我的网页浏览:
var html = '<!DOCTYPE html><html><head><script src="myfile.js" type="text/javascript"></script></head><body><h1>This is a heading!</h1><div id="here"></div></body></html>';
return (
<WebView html={html}
javaScriptEnabled={true} />
);
这里我有简单的js文件(myfile.js):
document.addEventListener("DOMContentLoaded", function(event) {
alert("HERE");
var generateHere = document.getElementById("here");
generateHere.innerHTML = '<div class="someclass"><a href="www.example.com"><p>some text</p></a></div>';
});
我在我的网络浏览器中尝试过它。
答案 0 :(得分:2)
您需要使用WebView上的injectedJavaScript
属性来传递要执行的JS。
例如:
<WebView html={html}
injectedJavaScript={'function myfunc() { //your JS here };myfunc();'}
javaScriptEnabled={true} />