jquery - 在嵌套内容之后设置光标位置可编辑

标签 jquery html contenteditable caret

我有这个标记

<div contentEditable="true">
    Some other editable content
    <div class="field" contentEditable="false">
        <span class="label">This is the label</span>
        <span class="value" contentEditable="true">This is where the caret is</span>
    </div>
    <!-- This is where I want the Caret -->
</div>

插入符号当前位于 .field 范围内。

我需要将它移回之后父级 contentEditable 中的 .field

Example

如何通过 javascript(如果需要使用 jQuery)来实现这一点?

当插入符号位于所示的 .value 范围内时,它将尝试在按下事件时触发它。

最佳答案

对先前答案的更新。 http://jsfiddle.net/GLzKy/4/

placeCaretAtEnd($(this).parent().nextAll('.field').children('value'));

更新

更新答案,评论中有正确答案

For moving directly after the current field, you might want to use range.setStartAfter and range.setEndAfter: http://jsfiddle.net/GLzKy/5

关于jquery - 在嵌套内容之后设置光标位置可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14449721/

相关文章:

javascript - 如何从轮播中获取id并显示特定图像的信息?

PHP/MySQL 连接语句

javascript - 为什么这些 CSS 文件被下载了两次?

php - 使用时间戳保存 contenteditable 中的更改

javascript - 获取 Contenteditable div 中图像的 alt 属性并替换图像

newline - contentEditable areas::force paragraphs for new lines - 跨浏览器

javascript - 为什么触发点击在 javascript 中不起作用

jquery - 增加触摸目标大小 jQuery ui slider

javascript - 如何删除移动应用程序中的多余空间?

javascript - 从智能手机和平板电脑识别用户并隐藏元素