Javascript &引用;“无法解析文档”;错误Android SDK webview GetElementsByCassName

Javascript &引用;“无法解析文档”;错误Android SDK webview GetElementsByCassName,javascript,android,webview,document,getelementsbyclassname,Javascript,Android,Webview,Document,Getelementsbyclassname,我正试图点击我的布局上的“搜索”按钮&它会在webview中点击谷歌搜索按钮 webview.evaljs(document.getElementsByClassName("google search button blah").click()); 但是现在eclipse告诉我 无法解析文档 有人知道怎么解决吗 谢谢。我相信您正在尝试使用Tianium Mobile SDK进行开发,因为evaljs不是官方Android SDK的一部分。 因此,我认为解决Eclipse抱怨文档无法解决的问题最

我正试图点击我的布局上的“搜索”按钮&它会在webview中点击谷歌搜索按钮

webview.evaljs(document.getElementsByClassName("google search button blah").click());
但是现在eclipse告诉我

无法解析文档

有人知道怎么解决吗


谢谢。

我相信您正在尝试使用Tianium Mobile SDK进行开发,因为evaljs不是官方Android SDK的一部分。 因此,我认为解决Eclipse抱怨文档无法解决的问题最好的办法是

webview.evaljs("document.getElementsByClassName('google search button blah').click();");
如果您不想使用Tianium Mobile SDK,可以始终使用webview的loadUrl方法。以下是如何

webview.loadUrl("javascript:(function(){document.getElementsByClassName('google search button blah').click();})()");

确保可以通过类名找到元素。

据我所知,标准Android SDK中没有evaljs函数。“文件”也是如此。除非正确导入这些额外的jar文件或库,否则Eclipse将抱怨没有标准SDK引用。为什么不在evaljs函数中引用您的参数呢?我想您的函数需要字符串。如果您知道在webview中调用单击按钮的另一种方法,而不使用evaljs,请共享。webview.loadUrl()就可以了。我会把答案贴在下面。好的。我想了想,但它不会让你从当前的网络视图页面上消失吗?不会的。加载javascript不会将您带到另一个页面,除非您的javascript设计为这样做。您知道如何在twitter mobile上通过单击“跟随”按钮来实现这一点吗?我不知道如何才能得到“follow”按钮的类名。另外,我正在使用eclipse,您必须查看twitter移动页面源代码,并找到follow按钮的id/class/name。当您知道类名时,只需使用上面的代码并替换类名。你知道如何从iphone或android上获取源代码吗?我不知道如何在桌面上访问twitter手机,即使我访问了,我也不确定它是否会像在手机上一样输出相同的信息源。我不确定iphone。对于android,有一些应用程序可以让您查看指定url的页面源。这是我用的好的,我刚下载了,上面写着,但是。。。“块”按钮也有相同的类。我应该用什么?