gpt4 book ai didi

javascript - 从 Activity 中调用 javascript 函数?

转载 作者:太空狗 更新时间:2023-10-29 15:43:50 24 4
gpt4 key购买 nike

如何使用 Activity 中的按钮调用加载到 webView 的 HTML 文档中的函数?即: Activity 的标题栏中有一个 ImageButton(称为:bookBtn)。当它被按下/点击时,我需要它在 webView DOM 中触发一个函数——它基本上将一个新的 HTML 文档加载到 DOM 中,实现一个滑入效果。

我找到了大量关于如何从 webView 到 Activity 执行此操作的文档,但没有找到相反的文档。谷歌说了 can be done但确实没有任何例子。我试着修改他们显示的示例代码 here但我无法让它工作。感谢您的任何输入。

下面是加载到 webView mWebView 的 HTML 文档中的函数:

    <script type="text/javascript">
$(document).ready(function() {
function loadTOC(){$.mobile.changePage("docs/1-1.html", "slideup");
};
});
</script>

...并且在我的主要 Activity 中,我按照 Google 文档尝试了此操作但不起作用:

    ImageButton imageButton = (ImageButton) findViewById(R.id.bookBtn);
imageButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
mHandler.post(new Runnable() {
public void run() {
mWebView.loadUrl("javascript:loadTOC");
}
});
}
});

最佳答案

代码中至少有两个问题:

1) javascript URL 不调用 loadTOC 函数,它只是引用它。你想要的是:

mWebView.loadUrl("javascript:loadTOC()");

2) loadTOC 函数不是全局可见的 AFAIK,因此 javascript URL 将无法访问它。

您还应该确保 JavaScript 已启用,因为不擅长编码的建议。

关于javascript - 从 Activity 中调用 javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5508591/

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