Невозможно выделить текст в поле ввода в IE
У меня есть поле ввода, которое находится внутри div, div имеет фоновое изображение, а поле ввода внутри него расположено и ограничено по размеру / шрифту для удобной работы с фоновым изображением. В FF все работает, как и ожидалось, в IE, хотя есть серьезная проблема. Я не могу выделить текст внутри поля ввода с помощью мыши или использовать ярлыки, такие как shift-end / home, ctrl-left / right. Вы можете перемещаться с помощью клавиш мыши и использовать клавиши удаления / возврата, чтобы настроить текст. HTML выглядит примерно так:
<div class='my_container'>
<input type='text' name='my_text_input' class='my_input' />
</div>
Любое понимание будет с благодарностью.
Я хотел бы добавить больше информации, я прикрепляю Dojo dnd Target к внешнему div. Если я не присоединяю dnd, тогда я могу сделать выбор, как только я прикрепил dnd, я больше не могу выделить текст.
1 ответ
Кажется, что это довольно просто, когда кто-то копается в коде, выполняемом dojo!!!
В объекте, передаваемом в конструктор 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 как ожидается.