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_Jquery_Html_Textarea - Fatal编程技术网

Javascript 停止插入符号跳到文本区域的底部?

Javascript 停止插入符号跳到文本区域的底部?,javascript,jquery,html,textarea,Javascript,Jquery,Html,Textarea,我有一个文本区,里面有很多文本,我有代码,当你按下Shift+Enter时,它会插入一段文本。然而,此时,一旦发生这种情况,文本就会滚动,这样插入符号就会出现在屏幕底部 我的插入代码: $("#body textarea").bind('keydown', function(event) { var caret = $("#body textarea").caret(); if(event.keyCode == 13 && event.shiftKey)

我有一个文本区,里面有很多文本,我有代码,当你按下Shift+Enter时,它会插入一段文本。然而,此时,一旦发生这种情况,文本就会滚动,这样插入符号就会出现在屏幕底部

我的插入代码:

$("#body textarea").bind('keydown', function(event) {
    var caret = $("#body textarea").caret();
    if(event.keyCode == 13 && event.shiftKey)
    {
        var text = "[br]"
        insertText("#body textarea", caret.start, caret.end, text, "");
        $("#body textarea").caret(caret.start+(text.length), caret.start+(text.length));
    }
});
有人知道我能做些什么来阻止它将插入符号压到底吗

干杯

BlackWraith

插入文本后,您可以手动设置插入符号的位置:

见:

ctrl是textarea元素

setCaretPosition(document.getElementById("textarea", 0);
我发现了同样的问题,并为您做了样品

你能在a中重现这个bug吗?@MyHeadharts:很抱歉延迟,它不想玩得很好,但下面是一个例子。注意,如果你向下滚动一点,它只会跳到底部。不过,作为一个注意,我希望得到jquery的答案,这比jquery更像javascript。。。只是说说而已。不过谢谢,它仍然可以满足我的要求:)
setCaretPosition(document.getElementById("textarea", 0);