我之前一直在试图提出问题,但并没有成功地解释或提供一个能够展示错误发生的工作示例。所以,这里再试一次:
我正在尝试在可编辑DIV上复制占位符效果。核心概念很简单:
<div contenteditable><em>Edit me</em></div>
<script>
$('div').focus(function() {
$(this).empty();
});
</script>
这种方法有时可以奏效。但是如果占位符包含HTML,或者进行了其他处理,则可编辑DIV的文本插入符将被移除,用户必须重新单击可编辑DIV才能开始输入(即使它仍然处于焦点状态):
例如:http://jsfiddle.net/hHLXr/6/
我无法在处理程序中使用焦点触发器,因为这会创建一个事件循环。因此,我需要一种重新设置可编辑DIV中插入符光标的方法,或以其他方式重新聚焦。
data-ph
占位符,同样的CSS代码就可以处理所有这些元素。 - mrmoje:empty
。失败了。 - vsync