Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.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 如何关注<;p>;在可编辑的div中_Javascript_Html_Contenteditable_Caret - Fatal编程技术网

Javascript 如何关注<;p>;在可编辑的div中

Javascript 如何关注<;p>;在可编辑的div中,javascript,html,contenteditable,caret,Javascript,Html,Contenteditable,Caret,我正在使用contenteditable div制作富编辑器。 我现在的问题是,我无法在嵌入Instagram框架后立即将插入符号放置在上。 我尝试的是创建新的,并在嵌入Instagram frame后专注于此。但它不起作用 有人知道这个问题的解决办法吗 (我将其中一个嵌入代码放在CSS块中)尽管contenteditable声明应该可以将光标放在空的p标记中,如下所示: <div>aaa<p>|</p>bbb</div> aaa|bbb (

我正在使用contenteditable div制作富编辑器。 我现在的问题是,我无法在嵌入Instagram框架后立即将插入符号放置在
上。 我尝试的是创建新的
,并在嵌入Instagram frame后专注于此。但它不起作用

有人知道这个问题的解决办法吗


(我将其中一个嵌入代码放在CSS块中)

尽管contenteditable声明应该可以将光标放在空的p标记中,如下所示:

<div>aaa<p>|</p>bbb</div>
aaa|

bbb
(Safari)和(Chrome)目前不支持它。更多信息

幸运的是,有一个相对容易的解决方法。我们只需要在p标记中获取一些内容,这样我们就可以将光标放在这里。一个选项可以是附加一个包含。这种方法有时在涉及内联标记的情况下很有用

在您的情况下,最有效的解决方案是在段落中添加一个换行符。Contenteditable实现通常将块标记内的换行符视为“临时保留节点”,默认处理在主要浏览器中是相同的。初始结果应如下所示:

<div>aaa<p>|<br></p>bbb</div>
aaa|
bbb
一旦开始键入,BR将被替换(浏览器会自动执行此操作):

aaa内部文本

bbb
即使删除内部文本,浏览器也应自动重新插入换行符,以便始终能够将光标移回内部


我已经用一个例子分叉并更新了您的JSFIDLE。

尽管contenteditable声明应该可以将光标放在空的p标记中,如下所示:

<div>aaa<p>|</p>bbb</div>
aaa|

bbb
(Safari)和(Chrome)目前不支持它。更多信息

幸运的是,有一个相对容易的解决方法。我们只需要在p标记中获取一些内容,这样我们就可以将光标放在这里。一个选项可以是附加一个包含。这种方法有时在涉及内联标记的情况下很有用

在您的情况下,最有效的解决方案是在段落中添加一个换行符。Contenteditable实现通常将块标记内的换行符视为“临时保留节点”,默认处理在主要浏览器中是相同的。初始结果应如下所示:

<div>aaa<p>|<br></p>bbb</div>
aaa|
bbb
一旦开始键入,BR将被替换(浏览器会自动执行此操作):

aaa内部文本

bbb
即使删除内部文本,浏览器也应自动重新插入换行符,以便始终能够将光标移回内部


我用一个例子介绍并更新了您的JSFIDLE。

非常感谢。这对我很有用!!我把这事推迟到晚些时候。非常感谢你。这对我很有用!!我把这事推迟到晚些时候。