Javascript-在div内的keydown上创建人工文本缩进(制表符)

Javascript-在div内的keydown上创建人工文本缩进(制表符),javascript,jquery,html,css,Javascript,Jquery,Html,Css,所以我需要一个div而不是textarea(长话短说,这样盒子就可以读取html) 然而,我遇到的一个问题是divs不允许只按Tab键缩进文本。所以我想知道是否有一种方法可以模拟按键 我可以想象这是一个大致如下的过程: $(document).ready(function () { $('body').on('keydown keyup',function(e){ var spaces = e.type=="keydown" ? if(e.which==9){

所以我需要一个div而不是textarea(长话短说,这样盒子就可以读取html)

然而,我遇到的一个问题是divs不允许只按Tab键缩进文本。所以我想知道是否有一种方法可以模拟按键

我可以想象这是一个大致如下的过程:

$(document).ready(function () {

    $('body').on('keydown keyup',function(e){
      var spaces = e.type=="keydown" ? 
      if(e.which==9){
          insert 4 spaces...  
      }
    });

});
这基本上应该和缩进一样吗


我对Javascript还是新手,所以如果这是一件简单的事情,我很抱歉。

什么是“让盒子可以阅读html”?如果将HTML传递给
div
textContent
属性,则可以在
div
中显示HTML。这是一个HTML问题。HTML忽略前导空格字符,您需要四个
s。别忘了阻止tab键的默认操作。@Teemu或者,将空格包装在
元素中。@ScottMarcus当然可以,但是需要一个div…这个提琴可能会有帮助