【发布时间】:2015-10-28 02:49:04
【问题描述】:
我正在尝试侦听一个指示已在内容可编辑 div 中创建新行的事件。目的是在每次创建新的空行并且插入符号位于该行时,或者如果用户单击插入符号位置到当前空行时,最终向用户显示一些选项。
在我的书中似乎有四个事件会导致用户在可满足的 div 中换行:
- 按回车键
- 粘贴末尾有一个空的新行的内容
- 单击导致插入符号(闪烁线)将位置移动到空行
- 使用箭头键移动到新行
当然,在可满足的 div 中,新行对不同的浏览器意味着不同的东西,在 chrome 中,它似乎创建了 <div><br/></div> 标签,但是浏览了足够多的东西后,似乎其他浏览器可能会创建 <div><p></p></div> 或者 @987654323 @标签。
我现在已经尝试过几次了,只需要完成它。这真的是监听该 div 下添加的新元素的最佳方式,和/或检查插入符号位置当前是否在空的“新行”标签内。每次插入符号移动时检查似乎效率很低 - 有没有更好的方法来做到这一点?
总结 tldr;人
- 有没有更好的方法来检查内容可编辑 div 中的新行?
- 如何有效地触发基于此的事件?
仅供参考,这是在 Angular 上下文中,我也有 jQuery(答案可以选择使用或不使用这些库)。
----- 编辑-----
到目前为止,答案都集中在创建新行“事件”和监视这些事件上,也许轮询插入符号位置是确定插入符号是否在空行上的更可靠方法。
【问题讨论】:
标签: jquery html css angularjs contenteditable