在iOS应用中,我使用了
stringFromJavaScript = [webView stringByEvaluatingJavascriptFromString:@"document.getElementById(\"image\").getAttribute(\"src")"];
获取webView上显示的图像的src目录。我想为Android做同样的事情。我有什么选择?
基本上意图是捕捉路径,以便我可以通过电子邮件发送同一张图片......
即
"picture.php?image=%@",stringFromJavascript
这样,当用户点击链接时会加载相同的图像,或者将其发布到Facebook等。
答案 0 :(得分:36)
是的,我在Android中大大错过了这个方法;)
要执行JavaScript并获得响应,您可以执行以下操作:
在代码中定义JavaScript回调接口:
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); } ) ()");
希望这有帮助!