Javascript 防止媒体编辑器的默认事件
我如何用自定义事件替换媒体编辑器的内部触发事件,或者简单地更改内部设计的行为 在这个层次结构中Javascript 防止媒体编辑器的默认事件,javascript,medium-editor,Javascript,Medium Editor,我如何用自定义事件替换媒体编辑器的内部触发事件,或者简单地更改内部设计的行为 在这个层次结构中 <div> <textarea class='editable'></textarea> </div> 我每次尝试textarea都会聚焦,光标开始闪烁 例如,初始单击事件使用类将元素添加到dom中。我是否应该跳转到源代码以修改此行为 或者,我希望它不需要点击,而是双击 有人熟悉medium editor的内部工作吗?经过反复试验,在开发工具的帮助下
<div>
<textarea class='editable'></textarea>
</div>
我每次尝试textarea
都会聚焦,光标开始闪烁
例如,初始单击事件使用类将元素添加到dom中。我是否应该跳转到源代码以修改此行为
或者,我希望它不需要点击,而是双击
有人熟悉medium editor的内部工作吗?经过反复试验,在开发工具的帮助下,我找到了做我想做的事情的方法。
但我认为这个问题还是可以回答的,因为我修改了媒体编辑器的源代码
因此,在第2725行的media editor.js
中有setupListener
函数
有3个主要事件附在案例“externalInteraction”之后:
2731行
鼠标向下
,单击
,焦点
从第2959行开始,有这些事件的附加处理程序
handlebodypick
,handleBodyFocus
,handleBodyMousedown
mousedown
对我的案例很重要,因为它是第一个触发的,应该在不同的案例中预防和接受
最后,我在源代码中添加了一个dblclick
和handlebodydblick
,然后在handleBodyMousedown
中添加一些逻辑,以防止在某些情况下出现mousedown
事件的默认行为
无论如何,据我所知,从源代码来看,没有重写方法或钩子可以修改medium editor
内部事件
如果有这个功能就好了。
或者,如果我错了,我想知道是否有更好的方法来做这些
var editor = new MediumEditor('.editable')
.subscribe("editableClick", function(e){
e.preventDefault();
});