【问题标题】:Android - Javascript: how to execute jquery in webviewAndroid - Javascript:如何在 webview 中执行 jquery
【发布时间】:2015-04-19 03:39:59
【问题描述】:

我正在构建一个在 web 视图中加载网页的应用程序。 在该网页中,我需要使用 Jquery 以编程方式单击一些链接。 现在,我知道如何以编程方式在 webview 上执行 Javascript 代码(见下文):

WebSettings myBrowserSettings = myBrowser.getSettings();
myBrowserSettings.setJavaScriptEnabled(true);
Log.d("Stefano", "JS enabled");    


myBrowser.loadUrl("javascript:document.getElementsByid('myWord').click();");

但是现在,我需要知道如何在我的 webview 中实现一个 Jquery 函数;我正在寻找正确的方法来管理以下内容:

myBrowser.loadUrl("jquery:function($("#myAnchor").click(function(event){})");

实现以下功能的正确方法是什么?

$("#a_link")[0].click();

【问题讨论】:

  • 如果您提出的原始问题已被任何发布的答案解决,您应该将其中一个标记为已接受。如果您有任何其他问题,您应该打开一个新问题。顺便说一句,代码 $("#a_link")[0].click();看起来不错。你有什么问题?

标签: javascript android jquery webview


【解决方案1】:

如果在这个页面中加载了 jquery,你可以这样调用:

webview.setWebViewClient(new WebViewClient() {  
    @Override  
    public void onPageFinished(WebView view, String url) {  
        webview.loadUrl("javascript:(function() { " +  
                    "$("#myAnchor").click(function(event){}" +  
                    "})()");  
    }  
});

【讨论】:

  • 我无法修改页面的 HTML 代码,因为我连接到的网站不是我的。那么,从网络加载网页,我该如何使用 Jquery?
  • 知道了,我改了答案
【解决方案2】:

你有什么问题?这是关于转义字符?

myBrowser.loadUrl("jquery:function($(\"#myAnchor\").click(function(event){})");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-05
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 2015-07-18
    • 2017-07-19
    相关资源
    最近更新 更多