我試圖在用戶單擊頁面上的鏈接時顯示文件選擇器。我查了一下,但還沒有找到完整的解決方案。如何通過點擊文本來顯示文件瀏覽器,並在鼠標懸停時將鼠標光標更改爲指針
我已經排除將監聽器綁定到我的鏈接上的單擊事件並模擬我窗體的文件字段上的單擊事件,因爲我讀過Safari不支持以編程方式單擊輸入[type = file]。
目前我使用的方法是將文件字段的不透明度設置爲0,絕對位置位於鏈接頂部,有效攔截鏈接上的任何點擊。問題在於,我無法找到一種方法來更改用戶的光標,因爲它們被文件輸入遮擋,因爲它不允許這樣的樣式。我給所有直接父元素的CSS樣式光標:指針,但仍然沒有運氣。
有沒有人有一個不同的方法,我可以採取的想法,讓光標更改爲我的鏈接懸停指針?我最好的選擇是在http://www.uploadify.com/這樣的事情上做些什麼?
編輯
要解釋好一點,我有我的頁面上此文件輸入:
<div class="logo_file">
<input id="logo_file_field" type="file">
</div>
有了這個CSS:
.logo_file {
position: absolute; /* this element's parent has position: relative */
top: -65px;
left: 0;
width: 175px;
overflow: hidden;
cursor: pointer;
}
input#logo_file_field {
opacity: 0;
-moz-opacity: 0;
filter: alpha(opacity=0);
cursor: pointer;
}
,我試圖展示當用戶點擊此鏈接時與該字段對應的文件選擇器:
<div class="logo_link_wrap">
<a id="logo_change_link">Change Photo</a>
</div>
其中有這樣的CSS:
.logo_link_wrap {
margin-top: 38px;
cursor: pointer;
}
現在我將不可見的文件字段在鏈接,但光標不會變成一個指針像它應該當你將鼠標懸停在鏈接。文件選擇器確實顯示,實際上只有光標沒有改變,這讓我很難受。由於
你需要與我們分享一些例子,因爲它很難理解你想要達到的目標。當有人點擊您頁面上的鏈接時,您正嘗試顯示上傳字段(輸入類型=文件)?你如何顯示該字段以及它位於何處?很難爲你調試這個問題,因爲我們沒有什麼可看的。這聽起來不是什麼大問題,因爲光標造型非常簡單,我只是不知道問題出在哪裏,除非我有一些代碼與你爭論。 – einar 2012-01-13 03:28:21
謝謝。是的,光標造型很簡單,但並不是文件輸入太多。 :( – dinjas 2012-01-13 04:15:59