Как сделать div с мигающим курсором и редактируемым текстом без использования <input>? - PullRequest
11 голосов
/ 19 мая 2009

Мне нужно создать слой div, чтобы при нажатии на него курсор на нем мигал, и вы могли вставлять / удалять текст точно так же, как <input type="text">, за исключением того, что я не хочу использовать его как есть. немного слишком ограничен моим случаем.

Я определенно могу использовать JavaScript.

Ответы [ 6 ]

13 голосов
/ 19 мая 2009

Элемент DIV имеет (также и другие элементы) contentEditable свойство, которое вы можете установить в Javascript на true.

getElementById('YourDiv').contentEditable = true;
5 голосов
/ 19 мая 2009

Вы можете сделать div редактируемым, установив для его атрибута / свойства contentEditable значение true. Однако для всего, что немного более мощное или гибкое, чем простейшее редактирование, вы можете посмотреть на существующие решения, такие как:

2 голосов
/ 05 декабря 2012

Jquery можно использовать так:

$.('#yourDiv').click(function() {
    $(this).attr('contenteditable', 'true');
});
1 голос
/ 19 мая 2009

Я предлагаю вам использовать текстовую область, а если этого недостаточно, используйте редактор WYSIWYG, например tinyMCE или FCKeditor.

0 голосов
/ 20 мая 2009

насколько я понимаю вашу проблему, вы можете восстановить ее, добавив textarea в ваш div. Очень просто сделать этот textarea автоматический размер, чтобы он занимал всю div область и выглядит следующим образом div.

Что касается contentEditable, я видел некоторые браузеры, поддерживает эту функцию для div -элемента и не поддерживает. В любом случае, вы можете использовать iframe в вашем div. Это document -элемент может иметь contentEditable.

0 голосов
/ 20 мая 2009
Для этой цели можно использовать атрибут

contenteditable . Следующая строка кода была протестирована в IE7 и Firefox 3.0.10. С одной стороны, я заметил, что этот атрибут должен использоваться только в нижнем регистре; иначе это не будет работать в Firefox.

<div id="Div_ID" contenteditable="true" tabindex="0">
   Enter text here
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...