javascript文件输入onchange无法正常工作

以下代码适用于除safri mobile之外的所有地方。 显然,onchange永远不会被触发。

// create a hidden file input element var input = document.createElement("input"); input.type = "file"; // when the input content changes, do something input.onchange = function(event) { // upload files } // Trigger file browser input.click(); 

我已经找到了类似的例子,但它们都指的是甚至有一些forms的文件输入的其他可见表示forms的场景,它们都涉及表单清除工作区。 那不行。

单击图片时会调用此代码,以便上传新代码作为替换。

任何提示? 我做错了什么?

我会被诅咒:在iOS Safari中,与其他浏览器相比,还需要两个额外的条件:

1)输入必须实际附加到DOM。

2)设置.onchange不起作用:必须使用addEventListener。