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

chrome浏览器textarea内tab缩进

时间:2015-01-06 12:15:51      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:

原理嘛:
我们对所有 textarea 元素绑定 onkeydown 事件,截获tab按键行为,通过js操作文本实现缩进,阻止默认的tab事件。

借助于jQuery,实现了一下:

//textarea支持tab缩进
$("textarea").on(‘keydown‘,function(e){
    if(e.keyCode == 9){
        e.preventDefault();
        var indent = ‘    ‘;
        var start = this.selectionStart;
        var end = this.selectionEnd;
        var selected = window.getSelection().toString();
        selected = indent + selected.replace(/\n/g,‘\n‘+indent);
        this.value = this.value.substring(0,start) + selected + this.value.substring(end);
        this.setSelectionRange(start+indent.length,start+selected.length);
    }
})

支持多行缩进

chrome浏览器textarea内tab缩进

标签:

原文地址:http://my.oschina.net/cxz001/blog/364135

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