2009-12-02 78 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

相关问题