首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在webview中调用或模拟javascript函数

如何在webview中调用或模拟javascript函数
EN

Stack Overflow用户
提问于 2015-09-18 14:13:04
回答 1查看 292关注 0票数 0

我正在制作一个混合应用程序。我正在使用xamarin的android,几乎和android一样。我已经想好了怎么把手机的后按钮按下。当按下时,我希望我的应用程序代码可以模仿或者调用javascript函数,它是webview显示的网页的一部分。这是我的网页,所以我知道网页正在呈现的代码。具体来说,当按下手机的后退按钮时,我想在页面元素上调用jquery slideToggle函数。可以这样做吗?如果是这样的话,最好的办法是什么?我希望这里的人在过去做过这样的事情。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-18 14:26:44

我不认为webview支持JQuery,除非您参考它。

Xamarin android的做法是:

代码语言:javascript
复制
 webView.addJavascriptInterface(new JsObject(), "injectedObject");
 webView.loadData("", "text/html", null);
 webView.loadUrl("javascript:alert(injectedObject.toString())");

来源:Android.Webkit.WebView.AddJavascriptInterface法

还要确保您启用了Javascript,

代码语言:javascript
复制
 web_view.Settings.JavaScriptEnabled = true;

您可以通过id (document.FindElementById)完成元素的显示或隐藏。然后可以将其display设置为blocknone。因此,您可以完全在Javascript中完成。

添加:

你的方法有几个问题。举几个例子-

  • 在按下back按钮时,用户希望看到一个特定的行为,并且它不应该被更改。这不会提供丰富的用户体验。
  • 如果您正在覆盖后退按钮按下,那么导航条菜单单击怎么办?
  • JavaScript的做法可能会导致安全问题。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32654194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档