【问题标题】:Input[type="file"] doesnt work on ios 12.2Input[type="file"] 在 ios 12.2 上不起作用
【发布时间】:2019-04-01 08:01:41
【问题描述】:

我的输入类型为“file”的应用程序适用于 ios 12.1 及更早版本,但不适用于 ios 12.2(最新版本)。这是我使用的代码:

<input ref="input" :accept="accept" type="file" @change="fileSelected">

调试时不会报错。我阅读了一些发布文档,Apple 说他们提高了 ios 设备中文档和内容的安全性,但没有看到任何修复方法。我正在使用 Framework 7 + Vue + Cordova

请任何人帮忙?谢谢!

【问题讨论】:

  • doesn't work 是什么意思?
  • 点击输入框没有任何反应
  • 实际上这是关于新的 ios 版本对 uiwebkit 的处理方式不同我猜,同样的 this.$refs.input.click(); 适用于旧版本但不适用于 12.2
  • accept 之前的: 是什么?你能把它删掉吗?
  • @MrJingles87 对我来说问题是我通过js触发了上传文件,不知何故ios 12.2不会让我们通过js函数触发上传文件,当直接从input[type='file点击上传按钮时'],它的工作原理。

标签: ios cordova uiwebview html-framework-7


【解决方案1】:

这看起来像是 UIWebview 中的一个错误, 我通过用 WKWebview 替换 UIWebview 解决了这个问题。

【讨论】:

  • 请给出一些代码解释,让其他人理解答案。
【解决方案2】:

你可以试试

$timeout(function() {
   angular.element(document.querySelector('#example')).triggerHandler('click');
});

而不是

$timeout(function() {
   document.querySelector('#example').click();
});

这个 bug 也被 Iphone XR 上的 IOS 12.1.2 取代

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 2019-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-23
    • 2010-12-22
    相关资源
    最近更新 更多