能否添加新功能:编辑器工具栏能够几秒后自动隐藏或鼠标离开划选位置一定距离后隐藏,谢谢!
编辑器工具栏能否几秒后自动隐藏?
相关帖子
- 其他回帖
-
JeffreyChen • • 2 • 2 赞同
工具栏出现几秒后自动隐藏
可以。用下面这个 JS 片段:(代码里是 4000 毫秒,你可以自己改)
// author: JeffreyChen var timeoutID; var oldValue1; // 创建一个 MutationObserver 实例 var observer = new MutationObserver(function(mutations) { try { mutations.forEach(function(mutation) { // .forEach 对获取到的每一个元素执行一次给定的函数 if (mutation.type === 'attributes') { // 检查是否有属性变化 var protyleToolbarElements = document.querySelectorAll(".protyle-toolbar"); protyleToolbarElements.forEach(function(element) { // .forEach 对获取到的每一个元素执行一次给定的函数 var oldValue = element.getAttribute('class'); if (oldValue1 === oldValue) { return } else { oldValue1 = oldValue; clearTimeout(timeoutID); } if (!element.classList.contains('fn__none')) { // 如果元素没有 fn__none 类名 // 延迟 4 秒后给元素添加 fn__none 类名 timeoutID = setTimeout(function() { element.classList.add('fn__none'); }, 4000); } }); } }); } catch (error) { console.error("MutationObserver encountered an error: ", error); } }); // 配置 MutationObserver 以观察子节点的属性变化 var config = { subtree: true, attributeOldValue: true }; // 开始观察文档的变化 observer.observe(document.body, config);
2 回复 - 查看全部回帖
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于