How to make a div with a blinking cursor and edita

2019-02-06 10:23发布

问题:

I need to make a div layer so that when you click on it you will have your cursor there blinking and you can insert/delete text just like <input type="text"> does, except that I do not want to use it as it is slightly too limited to my case.

I can definitely use JavaScript.

回答1:

DIV element has (other elements as well) contentEditable property that you can set in Javascript to true.

getElementById('YourDiv').contentEditable = true;


回答2:

You can make the div editable by setting its contentEditable attribute / property to true. However, for anything that is slightly more powerful or flexible then very basic editing, you might want to look at existing solutions such as:

  • TinyMCE
  • Kevin Roth's RTE
  • The YUI editor


回答3:

Jquery can be used like this:

$.('#yourDiv').click(function() {
    $(this).attr('contenteditable', 'true');
});


回答4:

I suggest you to use a textarea, and if that's not enough, use a WYSIWYG editor like tinyMCE or FCKeditor.



回答5:

as I understand your problem, you can resove it by adding textarea into your div. It is very simply to make this textarea autosize to occupy whole div area and looks like this div.

As for contentEditable, I have seen some browsers, supported this feature for div-element and does not. Anyway, you can use iframe in your div. It's document-element can have contentEditable.



回答6:

contenteditable attribute could be used for this purpose. Following code line has been tested in IE7 and Firefox 3.0.10. One part, I have noticed that this attribute should be used in lower case only; else it wont work in Firefox.

<div id="Div_ID" contenteditable="true" tabindex="0">
   Enter text here
</div>