我希望能够在编辑器首次加载时显示默认文本,如“在此处输入内容...”,但我希望当用户单击/关注内容区域时该文本消失。然后,如果他们在没有输入任何内容的情况下“模糊”(移出)内容区域,我希望“默认文本”重新出现在编辑器中。
在谷歌搜索和查看 TinyMCE 的 wiki 之后,看起来有 onActivate和 onDeactivate应该部分这样做的事件;然而,onDeactivate 的 wiki 页面有一个免责声明,声明它不是真正的“模糊”方法,而且我无法让 onActivate 事件正常工作(至少使用 FF 3.5)。
有没有其他人找到解决这个问题的方法?我正在使用库存的 TinyMCE 安装,并为我正在构建的站点的其他 JS 任务加载了 jQuery,因此如果 TinyMCE API 中没有可用的东西,我愿意接受一些 jQuery 魔法来实现这一点。
谢谢, 赛斯
最佳答案
如果用户切换到编辑器,onNodeChange
tinyMCE 事件将被触发。使用 tinyMCE 的 onMouseDown
检测点击。在这两个事件之间,您应该能够确定用户何时激活了编辑器。在主页中使用 $(body).click()
来确定用户何时点击编辑器并使其模糊。
我也会避免将默认文本作为编辑器的实际值。相反,我会让编辑器的 iframe/body 透明,并将默认值放在它后面的绝对定位的 div 中。使用上述触发器,当您希望默认值 [dis] 出现时,只需 show()/hide() 那个 div。
关于javascript - TinyMCE 是否有可用的内容焦点/模糊事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1616605/