我有一个div的contenteditable属性设置为true,但是,当我在其中键入文本时,它不会显示闪烁的光标或更新.我添加了焦点,按键和按键的事件监听器,看看div是否正在接收它们,它是!
那么所有适当的事件实际上是如何发射的呢,但是div的内容没有适当的更新呢?我没有做任何有趣的事情来阻止事件的默认行为.
另外,在不同的项目之前,我已经获得了可多次的工作,所以我相当肯定这是由这个特定页面的HTML的结构造成的一些bug.再次,问题只发生在Chrome和Safari中; Firefox和IE8都没问题.
解决方法
好吧,我想出了我的问题.我将css属性’-webkit-user-select’设置为没有一个元素方式上的问题的div的层次结构.因此,它阻止光标永远被放置在我的contentEditable div内.
有趣的是,相应的“-moz-user-select”(我也已经设置为层次结构)并不会以同样的方式影响到Firefox.