2010-12-08 68 views
2

我編寫了一個函數,當用戶關注它時自動清除輸入字段的預設值,如果用戶沒有輸入任何值,則將其重新放在模糊處。拖放數據時清除輸入字段

因此<input type="text" value="example" />的值將被設置爲無焦點。

我現在面臨的問題是:

當我選擇了一下頁面並拖動文本並將其放到輸入字段,字段將不被應用於放下的文本之前被清零。

相反,輸入字段的值將變爲:exampleLorem,與Lorem相反。

在將文本放入輸入字段後,是否有正確的方法來刪除默認值?

+0

比較安全的方法我能想到的是使用定時器..檢查每個x毫秒(例如,50)如果值發生了變化,如果是,手動觸發onchange事件。 – 2010-12-08 09:03:38

回答

4

有一對夫婦的其他事件,你可以比重點模糊使用

最有趣的這個問題應該是dropdragenterdragleave

請注意:MSIE它看起來像焦點事件在丟棄之後立即觸發,因此您需要一種標記來設置drop(並稍後移除此標記),以處理由drop強制調用焦點。

另外請注意:不幸的是Opera不支持這些的DragDrop事件

+0

謝謝,這讓我走上了正軌。 我最終使用並修改了此頁上的示例以實現我想要的結果:http://www.java2s.com/Tutorial/JavaScript/0480__Drag-Drop/ondropeventhandlerIE.htm – Ilium 2010-12-09 09:31:56

0

也許你可以清除預置不焦點,但懸停(或鼠標懸停)?

+0

我試過這樣做,但由於某些原因,像拖動一段文本時,懸停或鼠標懸停等事件不適用於輸入框。 – Ilium 2010-12-09 09:33:28