Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript的键盘缩进_Javascript - Fatal编程技术网

使用JavaScript的键盘缩进

使用JavaScript的键盘缩进,javascript,Javascript,我有下面的textarea字段来编写HTML代码,比如TryItEditor <textarea class="form-control" required rows="15" id="code" Placeholder="আপনার HTML এবং CSS কোডগুলো এখানে লিখুন তারপর আউটপুট দেখার জন্য নিচের নীল বাটনটিতে ক্লিক করুন..." name="code"></textarea>

我有下面的textarea字段来编写HTML代码,比如TryItEditor

<textarea class="form-control" required rows="15" id="code" 
Placeholder="আপনার HTML এবং CSS কোডগুলো এখানে লিখুন তারপর আউটপুট দেখার জন্য 
নিচের নীল বাটনটিতে ক্লিক করুন..." name="code"></textarea>

在这个框中,我需要使用缩进。因此,如果框中没有文本,那么缩进工作正常,但是如果已经有文本您已经键入了一些内容,但是现在您想要添加缩进,那么缩进工作不正常,我的意思是它将进入最后一行

这里是实时链接:

下面是我用于缩进的JS代码:

<script type="text/javascript">
    var myInput = document.getElementById("code");
    if(myInput.addEventListener ) {
        myInput.addEventListener('keydown',this.keyHandler,false);
    } else if(myInput.attachEvent ) {
        myInput.attachEvent('onkeydown',this.keyHandler); /* damn IE hack */
    }

    function keyHandler(e) {
        var TABKEY = 9;
        if(e.keyCode == TABKEY) {
            this.value += "    ";
            if(e.preventDefault) {
                e.preventDefault();
            }
            return false;
        }
    }
</script>

var myInput=document.getElementById(“代码”);
if(myInput.addEventListener){
myInput.addEventListener('keydown',this.keyHandler,false);
}else if(myInput.attachEvent){
myInput.attachEvent('onkeydown',this.keyHandler);/*该死的IE黑客*/
}
函数keyHandler(e){
var-TABKEY=9;
if(e.keyCode==TABKEY){
该值为“+=”;
如果(如默认){
e、 预防默认值();
}
返回false;
}
}
var myInput=document.getElementById(“code”);
if(myInput.addEventListener){
myInput.addEventListener('keydown',this.keyHandler,false);
}else if(myInput.attachEvent){
myInput.attachEvent('onkeydown',this.keyHandler);
}
函数keyHandler(e){
var-TABKEY=9;
var TABVAL=“”;
if(e.keyCode==TABKEY){
if(文档选择){
myInput.focus();
sel=document.selection.createRange();
sel.text=TABVAL;
}else if(myInput.selectionStart | | myInput.selectionStart=='0'){
var startPos=myInput.selectionStart;
var endPos=myInput.selectionEnd;
myInput.value=myInput.value.substring(0,startPos)+TABVAL+myInput.value.substring(endPos,myInput.value.length);
myInput.selectionStart=startPos+TABVAL.length;
myInput.selectionEnd=startPos+TABVAL.length;
}否则{
myInput.value+=TABVAL;
}
如果(如默认){
e、 预防默认值();
}
返回false;
}
}

哇,太好了,工作很好。你能给我推荐一个PHP试用编辑器吗?