如何模糊contentEditable = true的div?

时间:2011-02-02 19:07:13

标签: javascript jquery javascript-events

如何模糊/聚焦 contentEditable = true 的div?我尝试过$(elm).blur()$(elm).attr('contentEditable', false);

4 个答案:

答案 0 :(得分:34)

我会添加另一个基于Omnicon答案的解决方案,这是正确的BTW。我有forked his fiddle and updated it

诀窍是在调用模糊后删除所有范围:

$(".editable").blur();
window.getSelection().removeAllRanges();

答案 1 :(得分:7)

$("div[contentEditable]").blur()模糊所有contentEditable元素。

$("#elementId").blur()通过id模糊元素。

答案 2 :(得分:3)

当您点击元素并立即点击输入后,Roman Resh建议的解决方案不起作用。它不会模糊,但会创建换行符/ div。

可以完全防止这种行为。

See this fiddle

$('<div class="temp-contenteditable-el" contenteditable="true"></div>') .appendTo('body').focus().remove();

答案 3 :(得分:0)

在使用

之类的内容时附加到所有答案
$(".editable").blur()

认为模糊只是专注,比如

$(".editable:focus").blur()

如果没有,你有时可以进入好的probs