javascript - 为什么 .click() 在 Android 上不起作用?

标签 javascript android jquery

奇怪的情况:

在我的 plugins.js 文件中,我有一个简单的功能:

 function getFile(id) {
     document.getElementById("fileUploadHidden+" + id).click();
 }

它可以在网络浏览器上完美运行 - 即使在 WindowsPhone、iPhone/iPad 上......但不能在 Android 上运行。看起来 Android 浏览器忽略了 .click() 函数。

为什么?又该如何解决呢?

最佳答案

我认为你应该添加touchstart:

var isMobile = {
   Android: function() {
      return /Android/i.test(navigator.userAgent);
   },
   BlackBerry: function() {
      return /BlackBerry/i.test(navigator.userAgent);
   },
   iOS: function() {
      return /iPhone|iPad|iPod/i.test(navigator.userAgent);
   },
   Windows: function() {
      return /IEMobile/i.test(navigator.userAgent);
   },
   any: function() {
      return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Windows());
   }
};

if(isMobile.any){
   document.getElementById("fileUploadHidden+" + id).trigger('touchstart');
}else{
   document.getElementById("fileUploadHidden+" + id).trigger('click');
}

关于javascript - 为什么 .click() 在 Android 上不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24204942/

相关文章:

javascript - 为流体 div 设置相同的高度?

javascript - 我的图像替换 javascript 需要更多帮助 - 将数组对象添加为类

android - SurfaceHolder.lockCanvas() 返回 null

android - 使用 Paging3 库时更改请求并获取新数据流

javascript - 在加载完整页面之前使用 JavaScript 获取浏览器记住的滚动位置

javascript - jQuery 鼠标悬停事件处理程序不工作或被检测到

javascript - React.js 库无法在 CodePen 上运行?

android - ImageView 中的图像显示小于预期 (Android)

javascript - $(document).ready(initialize) 和 $(document).on ('ready' , initialize) 有什么区别?

javascript - 使用 Jquery draggable 将拖放/附加功能应用于 JSTreegraph