2009-12-02 54 views
3

我有一個輸入框在div的內部,div有一個背景圖像,並且它內部的輸入框被放置並限制在大小/字體中,以很好地與背景圖像。在FF中,一切都按預期工作,在IE中雖然存在一個主要問題。我無法使用鼠標選擇輸入框內的文本,也不能使用shift-end/home,ctrl-left/right等快捷方式。您可以使用鼠標鍵移動,並使用刪除/退格鍵調整文本。 HTML看起來像這樣:無法在IE上的輸入框中選擇文本

<div class='my_container'> 
    <input type='text' name='my_text_input' class='my_input' /> 
</div> 

任何洞察力將不勝感激。

我想添加一些更多的信息,我將Dojo dnd Target附加到外部div。如果我不附加dnd,那麼我可以做選擇,一旦我連接了dnd,我就不能選擇文本了。

+0

嗯,我有很多代碼可以解決你的例子,對我來說工作得很好。你確定你可以用你給我們的代碼片段重現問題嗎? – 2009-12-03 04:12:07

+0

你確定div不在其他東西后面嗎? (雖然這不能解釋不能用熱鍵選擇) – jcuenod 2009-12-03 15:44:45

+0

正確。以下是具體的樣式細節。外部主容器有一個很大的背景圖像,它的一部分被指定爲一個輸入框。輸入框是透明的,絕對位於容器內部。 – Michael 2009-12-03 18:41:03

回答

0

看來,這是相當直接的,一旦挖掘了道場正在執行的代碼!

在傳遞給dojo.dnd.Target構造函數的對象中,需要將skipForm屬性設置爲true。

所以,它看起來是這樣的:

var dndTarget = new dojo.dnd.Target(searchBox, { 
    isSource: false, 
    copyOnly: true, 
    selfCopy: false, 
    selfAccept: false, 
    skipForm: true // <-- THIS IS THE FIX 
}); 

這似乎在告訴Dojo不要連接到輸入元件,因此預期在IE瀏覽器的工作原理。

+0

如果你提到有問題的輸入是在一個可拖動的元素中,那麼它會有很大的幫助。否則,它不清楚它如何與Dojo相關。 DnD的詳細記錄:http://docs.dojocampus.org/dojo/dnd,包括skipForm ---不需要在代碼中挖掘。 – 2009-12-04 01:27:26

+0

我的appologies,它不是一個可拖動的,但它只有一個可放置的區域。我知道他們是一樣的;)我深入瞭解了文檔,我使用了api文檔,這個詞在這個詞上很不清楚。你認爲你可以更新API文檔,以便它與dojocampus網站上的內容更緊密地相關嗎? – Michael 2009-12-04 17:11:06

相關問題