Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Android:element.click()不工作_Javascript_Android - Fatal编程技术网

Javascript Android:element.click()不工作

Javascript Android:element.click()不工作,javascript,android,Javascript,Android,我试图通过隐藏输入type=“file”元素并创建一个链接来单击该输入元素,从而设置该元素的样式。我的代码在iPhone5上运行,但在GalaxyNexus(Android)上不运行 我的代码: <input id="files" type="file" accept="image/*;" class="hidden" /> <div id="button" onclick="files.click();">Take picture</div> 拍照 我

我试图通过隐藏输入type=“file”元素并创建一个链接来单击该输入元素,从而设置该元素的样式。我的代码在iPhone5上运行,但在GalaxyNexus(Android)上不运行

我的代码:

<input id="files" type="file" accept="image/*;" class="hidden" />
<div id="button" onclick="files.click();">Take picture</div>

拍照
我要做什么才能让它在Android上工作

onclick="files.click();"
应该是:

onclick="document.getElementById('files').click();"

但是你最好使用不引人注目的javascript,避免在html中编写内联javascript代码。

我会对你的问题发表评论,但我没有足够的声誉。在那里,您可能会找到问题的答案(或者更确切地说是解释,为什么它不起作用——安全原因):

将文件更改为document.getElementById('files')不起作用,但我将尝试不引人注目的javascript:)现在我执行onclick=“handleclick();”和函数handleclick(){alert('test');files.click();}。警报工作正常,但click()仍然不能…@PhilippeMaes。我认为某些浏览器不会为隐藏元素提供触发事件。尝试使输入可见,然后再试一次,我几乎可以肯定这就是它。通过将输入元素的不透明度设置为零来修复它:)。谢谢你的链接。