如何使用jQuery在contenteditable div中移动carret?

xzv2uavs  于 2022-11-22  发布在  jQuery
关注(0)|答案(2)|浏览(137)

我正在尝试在contenteditable div中放置插入符号。div没有setSelectionRange或createTextRange。(我目前使用的是Chrome。)
因此,我测试了是否可以发送按键事件:

var e = jQuery.Event("keypress", { keyCode : 39} );
jQuery(myDiv).trigger(e);

它不起作用。该事件没有出现在myDiv的处理程序中。〈=错误。它确实出现在侦听器中,但插入符号没有移动。(keyCode=39是右箭头。)
有什么建议吗?

rjjhvcjd

rjjhvcjd1#

由于问题的编辑,这是完全不同的,你第一次问,看看这个:
如何将光标移动到可包含内容的实体的末尾

g2ieeal7

g2ieeal72#

当您在触发行程常式之前系结行程常式时,应该会显示事件:

(function($){
    $(function() {
        $('#foobar').keypress(function(event) {
            console.log(event.which);
        });

        var e = $.Event("keypress", { which : 39} );
        $('#foobar').trigger(e);
    });
})(jQuery);

这会在您访问该页面时在控制台中记录39
working fiddle

相关问题