2012-08-22 32 views
1

通過一些不錯的教程,我試着開始: 1)使用jQuery的(尤其是AjaxUpload庫)從輸入文件按鈕來上傳圖像文件。 2)使用CSS技巧將默認的HTML5 輸入文件按鈕更換爲更好的自定義按鈕。 3)使用HTML5過濾器來允許「僅特定圖像」文件上傳。AjaxUpload和修改輸入的文件類型不共同努力

問題是,當我使用修改後的輸入文件按鈕(即沒有任何反應)時,AjaxUpload庫似乎被破壞。

例如,this JSFiddle是使用默認輸入文件的測試。如果您嘗試上傳文件,加載gif會說您目前正在上傳文件。 This one與修改後的輸入文件相同。沒有加載gif啓動。

此外,HTML5文件過濾似乎在我的Chrome瀏覽器中被打破,但這是一個小問題。

有什麼想法?

回答

1

這可能是因爲某些內部邏輯AjaxUpload或瀏覽器的安全限制。試試這個CSS(高度是30px而不是0%):

.file-wrapper input { 
     cursor: pointer; 
     font-size: 100px; 
     width:100%; height:30px; 
     filter: alpha(opacity=1); 
     -moz-opacity: 0.01; 
     opacity: 0.01; 
     position: absolute; 
     right: 0; 
     top: 0; 
    } 

另外,關於接受。它必須是這樣的(作品肯定在Chrome):

accept="image/jpg,image/jpeg,image/png,image/gif,image/bmp,image/tiff" 

而且看起來不會與AjaxUpload工作。我已經在JSFiddle中嘗試過了,但是在結果中我看不到接受屬性。可能它由於某種原因被插件刪除

+0

是的,現在它的工作原理!謝謝。不過,我也不得不提一下,在這種方式下,當onhover元素時不能顯示自定義標題,所以默認顯示「No file selected」。。此外,文件過濾仍然不起作用!看到更新的[JSFiddle](http://jsfiddle.net/qMRvG/4/) – JeanValjean

+0

Mhhh!我明白了......說實話,accept =「。jpg,.gif等等」在分離因此,看起來AjaxUpload庫已經損壞了,我要去找一些更好的東西了! – JeanValjean

+1

@JeanValjean帶onhover標題 - 如果你把標題屬性放在一個文件輸入上,它必須工作。AjaxUpload也會刪除那個。 –