2013-03-28 62 views
1

我有問題,在DIV 拖放的文件我希望把它放在文件輸入拖放文件,並把它放在文件輸入

我有這樣的代碼

document.getElementById('drop_div').addEventListener('drop', function(e){ 
    e.preventDefault(); 
    var files = e.target.files || (e.dataTransfer && e.dataTransfer.files); 
    document.getElementById('file_input').files = files; 
}); 

此代碼的工作完全在「谷歌瀏覽器」,但與其他瀏覽器

*從所有這一切的基礎是上傳使用拖放文件,而無需使用AJAX沒有機會,如果你有什麼好方法告訴我

+0

這是一個問題,但它幫助我實現了上傳文件的拖放區域。謝謝! :) – 2017-04-28 18:19:25

回答

0

我將通過將文件輸入設置爲0不透明度來實現。

<div style='position: relative' id='drop_div'> 
    <input type='file' style='position: absolute; opacity: 0; filter: alpha(opacity = 0);'/> 
    <span style='position: absolute'>Drop Here</span> 
</div> 

然後在文件輸入中添加一個onchange偵聽器。

+0

謝謝,我認爲這是最後的解決方案,但它不適用於OPERA/SAFARI/IE – NassimPHP 2013-03-28 15:57:24