满足条件换行符?

时间:2017-01-12 01:35:29

标签: javascript jquery contenteditable

我拦截了contenteditables上的返回按键并插入了两个<br>标签而不是默认<div>。我添加了两个<br>代码,因为添加一个代码并不会将插入符号移到新行上。

$(document).on("keydown", "[contenteditable='true']", function(e) {
    if (e.keyCode === 13) {
        document.execCommand('insertHTML', false, '<br><br>');
        return false;
    }
});

在大多数情况下这很好用。例如,如果我输入

This is some text

然后点击返回,我得到了这个

This is some text <br> <br>

然后,如果我输入内容,最后的<br>将被换出,我会得到这个

This is some text <br> Some more text

完美。但是,如果我将插入符号移回第一行的末尾并点击返回,则会添加两个<br>标记,将插入符号向下跳两个空格。

是否有某种方法可以有条件地添加<br>标签,只有当插入符号位于文本范围的末尾或其他内容时才添加两个?

0 个答案:

没有答案