在可编辑的div中添加选项卡功能

时间:2013-10-30 14:10:24

标签: javascript jquery html textarea

我正在使用可编辑的div并希望在其中实现选项卡功能但不起作用。 当我使用html textarea代替可编辑的div时,工作正常。 下面的代码适用于textarea工作正常:

<textarea id="txt" style="height: 125px; overflow-y: scroll; resize: none">@Html.Raw(Model.data)</textarea>
$('#txt').keydown(function (e) {
    var keyCode = e.keyCode || e.which;
    if (keyCode == 9) {// 9 for tab key
        var start = $(this).get(0).selectionStart;
        $(this).val($(this).val().substring(0, start) + "\t" + $(this).val().substring($(this).get(0).selectionEnd));
        $(this).get(0).selectionStart = $(this).get(0).selectionEnd = start + 1;
        return false;
    }
});

但是当我在textarea下面使用了可编辑的div时,那就不起作用了:

<div id="txt" contenteditable="true" style="text-align: justify; overflow-y: scroll;">
    <p>@Html.Raw(Model.data)</p>
</div>

1 个答案:

答案 0 :(得分:0)

<div id="txt" tabindex="0" contenteditable="true" style="text-align: justify; overflow-y: scroll;"/>

给div tabindex以获得焦点。