导航栏单击打开文档、双击展开子文档

本贴最后更新于 190 天前,其中的信息可能已经水流花落

现状及需求

捋一捋 现在文档树中点不同地方有 3 个操作:

1.点三角箭头及左边区域:展开子文档

2.点图标:给文档换 emoji

3.点标题文字处:打开这个文档

输入类型太多,就像强制垃圾分类 😂

需求:简化选择,无压操作

建议方案

方案一

1.统一输入类型:点击 1、2、3 区,视为统一操作

2.通过点击次数区分:单击打开文档,双击(或者文档打开时再单击)展开子文档

原换文档图标的操作,建议移到右键,或者移到文档换 slogan 处

方案二

点除图标外任意位置,打开该文档,同时在文档树中展开子文档

求求作者改吧!!每次想看子文档就跟吃大便一样难受!!累赘思考、累赘操作越少越好!!

麻烦大佬开个投票,看下现有方案、方案一、方案二那种接受的人多 🙏

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    19017 引用 • 71387 回帖 • 2 关注
2 操作
LeonEngineer 在 2023-11-05 15:38:20 更新了该帖
LeonEngineer 在 2023-11-04 19:04:29 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 第 1、3 条合并:点除图标外任意位置,打开该文档,同时在文档树中展开子文档

    那你怎么翻目录?翻一下目录就会打开一堆文档

    不如用这个代码片段,用中键展开子文档

    /* 中键点击展开文档树 JS片段 */
    (function(){
        let g_reset = setInterval(main, 2000);
    
        function main() {
            if (document.querySelector('.sy__file')) {
                clearInterval(g_reset);
            }else{
                return false;
            }
            document.querySelector('.sy__file').addEventListener('mousedown', event => {
                if (event.button != 1) return;
                let notTitleFlag = false;
                if (!event.target.classList.contains('b3-list-item__text')) notTitleFlag = true;
                let target = event.target.parentNode;
                let temp = event.target;
                console.log("0426",event);
                for (let i = 0; i < 4 && temp; i++) {
                    if (temp?.getAttribute("data-type") == "navigation-file"
                        || temp?.getAttribute("data-type") == "navigation-root") {
                        target = temp;
                        break;
                    }
                    temp = temp?.parentNode;
                }
                console.log("0426target", target);
                if (target?.getAttribute("data-type") == "navigation-file"
                  || target?.getAttribute("data-type") == "navigation-root") {
                    const b3ListItemToggle = target.querySelector('.b3-list-item__toggle');
                    const title = target.querySelector('.b3-list-item__text');
                    if (b3ListItemToggle.classList.contains('fn__hidden')) return;
                    event.preventDefault();
                    b3ListItemToggle.click();
                    if (event.ctrlKey) {
                        title.click();
                    }
                }
            }, true);
        }
    })();
    
    2 回复
  • LeonEngineer

    谢谢,这个解决了一部分,先用上了

    关于您提的展开影响翻页,可以解决的:

    方案 ① 点一下展开、再点一下折叠

    方案 ② 点一下看文档、再点一下展开子文档

    总之,less is more 尽量就一个动作,别让我思考了

  • PiChou 1 赞同

    文档树的逻辑应该是参考的 notion,我觉着挺符合直觉的啊,关键是大纲(无序列表)也是点击三角形展开/折叠,按你的办法反而不易理解了。

    1 回复
  • LeonEngineer

    文档树操作挺难摆脱文件夹的感觉,跟文档内还是有些区别

  • fortun5

    赞同,第二个“点图标:给文档换 emoji”真的太恶心了。谁整天给文档换 emoji 呢?这种低频操作的确应该右键或放到更偏僻的地方去。

    1 回复
  • fortun5

    这段 JS 怎么使用的?

    1 回复
  • image.png

    p.s. 可以先按确定(4)保存了代码片段后再重新打开界面启用(5)

    image.png

  • 我就是经常换 emoji 的哈哈,用于视觉标识文档状态

请输入回帖内容 ...