2011-10-22 43 views
2

我的代碼樣本的工作是在這裏:http://develop.davzy.com/test2.php。點擊無法在Chrome

<input name="avatarfile" type="file" id='uploadbutton' /> 
<script>document.getElementById("uploadbutton").click()</script> 

它應該是隻要你打開網頁打開文件選擇器。它適用於IE8,IE9,FireFox,但不適用於Chrome。

+1

Firefox 7也阻止它。它必須是安全功能。我會討厭打開我的「瀏覽文件」窗口的網站。沒有經驗的網絡用戶可以輕鬆上傳文件,而無需意識到。 – Emil

+2

重複http://stackoverflow.com/questions/210643/in-javascript-can-i-make-a-click-event-fire-programmatically-for-a-file-input – Emil

+0

我想要這個的原因是因爲我想要它,所以當用戶推「上傳圖片」時,它會打開這個背景,並且我希望它打開上傳對話框。 – Macmee

回答

1

是因爲瀏覽器攔截彈出窗口,至少在Firefox告訴我一個彈出式窗口攔截

+1

哪個部分彈出? – Ibu

+1

firefox將文件選擇器檢測爲彈出式窗口 – elios264

2

這將無法正常工作,甚至不能在Firefox(7+)。這是避免劫持輸入字段的安全措施。

關於彈出窗口,Firefox警告您頁面正在嘗試彈出一個窗口(文件上傳對話框是一個用戶界面窗口)頁面加載,所以用戶會收到通知,並被允許選擇允許它或阻止它。

無論如何,您爲什麼需要在頁面加載時打開文件對話框?