jquery 范围选择 contenteditable=“false”上的前一个元素
我有这个片段:
<div contenteditable="true"> father
<a contenteditable="false" href="#"> myLink </a>
</div>
我的问题是,如果我在后面放置插入符号
</a>
,然后尝试退格以删除 myLink html 标签,它在 Firefox 中不起作用,但在 Chorme、Opera、safari 和 explorer 中起作用。 另一方面,如果在 Firefox 中我选择
<a contenteditable="false" href="#"> myLink </a>
然后用退格键删除它,它就可以了!
可能的解决方法是
<a contenteditable="false" href="#"> myLink </a>
当用户数字退格键时以编程方式选择元素的范围。
我怎样才能在 jquery 中做到这一点? 如果插入符光标位于
</a>
用户数字退格键之后,我想选择
<a contenteditable="false" href="#"> myLink </a>
并删除该节点。
I have this snippet:
<div contenteditable="true"> father
<a contenteditable="false" href="#"> myLink </a>
</div>
My problem is that if I place caret after
</a>
and I try to backspace for remove myLink html tag, It doesn't work in firefox, but it works in chorme, opera, safari and explorer.
Other hand if in firefox I select
<a contenteditable="false" href="#"> myLink </a>
and then delete it with backspace it works!.
Possible workaround It is range selecting of the element
<a contenteditable="false" href="#"> myLink </a>
programmatically when user digit backspace key.
How can I do this in jquery?
If the caret cursor is after
</a>
and user digit backspace I want select
<a contenteditable="false" href="#"> myLink </a>
and remove that node.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
添加一个带有 contenteditable=true 的 span 标签,如下所示,
myLink
在这里检查 jsFiddle ,
我测试过在 FF、IE 8 和 Chrome 中,可以使用退格键将其删除,但在 FF 和其他浏览器中的用户体验有所不同。
我不确定这是否是最好的方法。
编辑:似乎已经回答了此处
Add a span tag with contenteditable=true like below,
<a contenteditable="false" href="#"><span contenteditable="true"> myLink </span></a>
Check jsFiddle here,
I tested it in FF, IE 8 and Chrome and was able to remove with backspace, but the user experiance is different in FF and other browsers.
I am not sure if this is the best way to do it.
Edit: Seems like this is already been answered here