【问题标题】:Javascript function working in desktop browser but not in android webviewJavascript函数在桌面浏览器中工作但在android webview中不起作用
【发布时间】:2014-04-24 19:49:22
【问题描述】:

感谢您花时间提供帮助。

我有一个简单的 javascript 函数,可以在所有浏览器中运行,但是当我在 android Webview 环境中运行时,该函数不起作用。

我的功能:

    function toggleList() {
         var ArrLinks = new Array();
         var iconID = document.getElementById('header_toggle');
         ArrLinks = document.getElementsByTagName("li");
    for(var i=0; i<ArrLinks.length;i++)
    {
        if (ArrLinks[i] != null) {
            if (ArrLinks[i].getAttribute("data-id") == null){
                ArrLinks[i].click();
            }
        }
    }
   }

知道为什么这个函数不能在 webView 上工作吗?该函数由按钮上的 onclick() 调用,它只是单击所有未设置 data-id 的 li 元素。

我认为重要的是要注意其他 javascript 函数可以正常工作。

提前谢谢你

【问题讨论】:

    标签: javascript android webview


    【解决方案1】:

    通过调用onclick函数而不是click()来解决。适用于浏览器和安卓

    【讨论】:

      【解决方案2】:

      Android WebView 无法识别点击事件。考虑使用触摸事件(查看here 了解有关 jquery mobile 的更多信息)

      【讨论】:

      • 如果您知道如何控制 WebView,您可能会认为此讨论也很有用:stackoverflow.com/questions/5116909/…
      • 那么有没有一种可以双向使用的 tap() 替代方法?相同的代码在桌面浏览器和 android 上都可以运行很重要,所以我不能有不同的版本
      • 通过调用onclick而不是click函数解决。
      猜你喜欢
      • 2021-01-17
      • 1970-01-01
      • 2021-08-20
      • 1970-01-01
      • 2013-05-06
      • 1970-01-01
      • 1970-01-01
      • 2017-03-17
      • 2015-01-09
      相关资源
      最近更新 更多