在 iOS 应用程序中,我使用了
stringFromJavaScript = [webView stringByEvaluatingJavascriptFromString:@"document.getElementById(\"image\").getAttribute(\"src")"];
获取 webView 上显示的图像的 src 目录。我想对 Android 做同样的事情。我有什么选择?
基本上,目的是捕获路径,以便我可以通过电子邮件发送同一张图片...
即。
"picture.php?image=%@",stringFromJavascript
这样,当用户单击链接或将其发布到 Facebook 等时,就会加载相同的图像。
最佳答案
是的,我非常怀念 Android 中的这种方法;)
要执行 JavaScript 并获取响应,您可以执行以下操作:
在代码中定义 JavaScript 回调接口(interface):
class MyJavaScriptInterface { @JavascriptInterface public void someCallback(String jsResult) { // your code... } }
将此回调附加到您的 WebView
MyJavaScriptInterface javaInterface = new MyJavaScriptInterface(); yourWebView.addJavascriptInterface(javaInterface, "HTMLOUT");
运行 JavaScript,从脚本中调用
window.HTMLOUT.someCallback
:yourWebView.loadUrl("javascript:( function () { var resultSrc = document.getElementById(\"image\").getAttribute(\"src\"); window.HTMLOUT.someCallback(resultSrc); } ) ()");
希望这有帮助!
关于java - stringByEvaluatingJavascriptFromString(iOS 方法,Android 等效方法是什么?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16998416/