码迷,mamicode.com
首页 > 其他好文 > 详细

div模拟textarea

时间:2017-08-23 18:14:03      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:blur   技术分享   一个   eve   false   内容   webkit   支持   order   

今天本来呢是要搜js中的createTextRange,结果我输入createTextRange,按下回车,百度第二条就是张鑫旭前辈的博文,意外的惊喜从我点击进去的那一刻就发生了,

惊喜在这里:HMTL的块标签可以让其像textarea一样支持blur,focus事件;

怎么做到的呢?就我目前一个小菜鸟的水平,这三个简单方法就可以了:

    第一个方法:contenteditable="true"   

      <p contenteditable="true" style="width: 300px ;height: 300px; border:1px solid #f66;"></p>

      contenteditable的属性嘛,知道:true,false,再加plaintext-only就够了

      contenteditable=“”

      contenteditable=“true”

      contenteditable=“false”

      contenteditable=“plaintext-only”

      contenteditable=“events”

      contenteditable=“caret”

      这个方法有个缺陷:假如是通过复制黏贴过来的内容,不会去格式化,这就是个尴尬的事了,如下:

      技术分享

     这种方式没有什么兼容问题,我试过的Chrome,IE,Firefox,Opera都支持,那还有什么更好的方式解决这个问题呢?

    第二个方法:其实它的属性值里已经有了,哈哈哈,contenteditable=“plaintext-only”,又被你发现了,

      技术分享

      完美解决,但,遗憾的是只有Chrome和Opera支持,我测的Opera版本:技术分享

    第三个方法:user-modify

      user-modify:read-only

      user-modify:write-only

      user-modify:read-write

      user-modify:read-write-plaintext-only(去格式化)

      开发中的时候要加上浏览器的前缀:

      -webkit-user-modify: read-write-plaintext-only;(支持去格式化)

      技术分享

      -webkit-user-modify: read-write;(不支持去格式化)

      技术分享

      同样的,这种方式也只有Chrome和Opera支持;

div模拟textarea

标签:blur   技术分享   一个   eve   false   内容   webkit   支持   order   

原文地址:http://www.cnblogs.com/tiny-jiao/p/7419443.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!