点击其他区域不让编辑器失去焦点

最近遇到这么个需求:选中编辑器内一段文本,然后点击顶部操作按钮,不想让选中的文字失去选中状态。

 

实现方式为:阻止编辑器区域外的事件进行事件冒泡。

 

但是不能直接在onclick上写,因为这个时候事件都冒泡完都到传递的阶段了,你在这个地方防止事件冒泡,晚了。

 

那就这样写:

document.getElementById('id').addEventListener("mousedown",this.stopProp);

//阻止
    stopProp=(e)=>{
        if ( e && e.preventDefault ){
            e.preventDefault();
        }else{
            window.event.returnValue = false;
        }
        return false;
    }

这样就解决了!

 

over!

 

posted on 2020-12-18 18:06  rainbowLover  阅读(369)  评论(0编辑  收藏  举报