我已经找了几个小时了,但还是找不出来。
所以我正在做一个文本编辑器,所以当他们按下‘选项卡’键时,它会缩进文本,或者我已经选择了文本,或者光标文本选择器前面的文本。我一直在寻找设计模式,我试着做一个元素designMode,但你不能,除非我做错了。这是我的代码,它启动了我的简单编辑器
$(".code").click(function () {
$(".code").attr('contenteditable', 'true');
document.getElementById("code").designMode = "on";
});
然后是“选项卡键代码”
$(".code")
.keydown(function (e) {
var keyCode = e.keyCode || e.which;
if(keyCode == 9) {
e.preventDefault();
}
});
问题:,您如何缩进内容可编辑,例如,在文本编辑器中,您可以缩进任何内容或文本。(我对我的关键事件没有开火没有任何问题)
这不是文本框或输入框,它只是一个内容可编辑的div。
发布于 2013-03-06 03:35:54
所以我想明白了,暗号
$(".code").keydown(function(e)
{
e = e || window.event;
var keyCode = e.keyCode || e.which;
if (keyCode == 9)
{
e.preventDefault();
document.execCommand('styleWithCSS',true,null);
document.execCommand('indent',true,null);
}
});
发布于 2013-03-06 01:43:49
我假设$(".code")是一个文本区域,当它集中并按下键时就会发生事件。
$(function(){
var c = $(".code");
c.keydown(function (e) {
e = e || window.event;
var keyCode = e.keyCode || e.which;
if(keyCode === 9) {
e.preventDefault();
$(this).val($(this).val().substring(0,$(this).get(0).selectionStart) + "\t" + $(this).val().substring($(this).get(0).selectionEnd));
}
});
});
以下方面的例子:
http://jsfiddle.net/hXxU9/
https://stackoverflow.com/questions/15237304
复制相似问题