gpt4 book ai didi

javascript - 加载html后将js文件从assets加载到webview

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:44:13 25 4
gpt4 key购买 nike

我搜索了很多,但无法找到任何解决方案。我基本上是在 webview 中制作一个 epub 阅读器,它具有一些功能,如突出显示文本等。我​​为此制作了一些 javascript 文件。但是要在 html 页面中添加 js 文件,我需要在 html 文件中定义它,例如:

<script src='file:///android_asset/jquery.js'></script>

但由于 html 可以是任何文件,我必须使用其他方法加载文件。我尝试使用

view.loadUrl("javascript:loadScript('file:///android_asset/jquery.js','callback')");

但它没有加载我的 js(我调用了它的一些函数,但它们没有起作用)。

我也试过this解决方案,但没有奏效。基本上,我只需要在 webview 上加载我的 js 文件,以便我以后可以使用它的功能。这听起来像是一项简单的任务,但我无法为此找到任何解决方案。有什么想法吗?

最佳答案

您将要使用 loadDataWithBaseURL为了您的目的。

更新:

我没有在任何地方看到加载到页面中的实际方法 loadScript(),因此您可以在调用 javascript:loadScript() 之前尝试自己创建 loadScript 方法。

     view.loadUrl("javascript:function loadScript(url, callback)" +
"{" +
" var head = document.getElementsByTagName('head')[0];" +
" var script = document.createElement('script');" +
" script.type = 'text/javascript';" +
" script.src = url;" +
" script.onreadystatechange = callback;" +
" script.onload = callback;" +
" head.appendChild(script);" +
"}");
view.loadUrl("javascript:loadScript('file:///android_asset/jquery.js','callback')");

关于javascript - 加载html后将js文件从assets加载到webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28099546/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com