如果搜索不出来内容, 按回车会新建文档
有什么办法能取消创建新文档这个动作么
如果搜索不出来内容, 按回车会新建文档
有什么办法能取消创建新文档这个动作么
思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。
融合块、大纲和双向链接,重构你的思维。
代码片段分为 CSS 与 JS 两种代码,添加在 [设置 - 外观 - 代码片段] 中,这些代码会在思源笔记加载时自动执行,用于改善笔记的样式或功能。
用户在该标签下分享代码片段时需在帖子标题前添加 [css]
或 [js]
用于区分代码片段类型。
提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。
改变 dataset 类型值就好了,如下代码
// 搜索不到时回车不新建文档(鼠标点击可新建)
// see https://ld246.com/article/1743579723972
(()=>{
observeSearchNewDocDom((searchNew) => {
// 加载时修改类型
searchNew.dataset.type = 'search-new-disabled';
// 点击时恢复类型
searchNew.addEventListener('click', function(event) {
searchNew.dataset.type = 'search-new';
});
searchNew.querySelector('.b3-list-item__meta').textContent = '点击创建';
if(searchNew.nextElementSibling && searchNew.nextElementSibling.matches('.search__empty')) {
searchNew.nextElementSibling.textContent = `搜索结果为空,点击创建新文档`;
searchNew.nextElementSibling.addEventListener('click', function(event) {
searchNew.click();
});
}
});
function observeSearchNewDocDom(callback) {
// 创建一个观察者实例并传入回调函数
const observer = new MutationObserver(async (mutationsList, observer) => {
for (const mutation of mutationsList) {
if (mutation.type === 'childList') {
mutation.addedNodes.forEach(node => {
// 监控搜索新建文档dom被加载
if (node.nodeType === 1 && node.matches('#searchList [data-type="search-new"]')) {
callback(node);
}
});
}
}
});
// 配置观察选项:
const config = {
childList: true, // 观察子节点的变化(添加/删除)
subtree: true, // 观察所有后代节点
attributes: false,
};
// 选择需要观察变动的节点
const targetNode = document.body; // 或者选择更具体的父节点以减少性能消耗
// 开始观察目标节点
observer.observe(targetNode, config);
// 返回一个取消观察的方法
return () => observer.disconnect();
}
})();
该代码回车不创建文档,点击创建,保留了一部分原本功能。
改变 dataset 类型值就好了,如下代码
// 搜索不到时回车不新建文档(鼠标点击可新建)
// see https://ld246.com/article/1743579723972
(()=>{
observeSearchNewDocDom((searchNew) => {
// 加载时修改类型
searchNew.dataset.type = 'search-new-disabled';
// 点击时恢复类型
searchNew.addEventListener('click', function(event) {
searchNew.dataset.type = 'search-new';
});
searchNew.querySelector('.b3-list-item__meta').textContent = '点击创建';
if(searchNew.nextElementSibling && searchNew.nextElementSibling.matches('.search__empty')) {
searchNew.nextElementSibling.textContent = `搜索结果为空,点击创建新文档`;
searchNew.nextElementSibling.addEventListener('click', function(event) {
searchNew.click();
});
}
});
function observeSearchNewDocDom(callback) {
// 创建一个观察者实例并传入回调函数
const observer = new MutationObserver(async (mutationsList, observer) => {
for (const mutation of mutationsList) {
if (mutation.type === 'childList') {
mutation.addedNodes.forEach(node => {
// 监控搜索新建文档dom被加载
if (node.nodeType === 1 && node.matches('#searchList [data-type="search-new"]')) {
callback(node);
}
});
}
}
});
// 配置观察选项:
const config = {
childList: true, // 观察子节点的变化(添加/删除)
subtree: true, // 观察所有后代节点
attributes: false,
};
// 选择需要观察变动的节点
const targetNode = document.body; // 或者选择更具体的父节点以减少性能消耗
// 开始观察目标节点
observer.observe(targetNode, config);
// 返回一个取消观察的方法
return () => observer.disconnect();
}
})();
该代码回车不创建文档,点击创建,保留了一部分原本功能。
用 CSS 隐藏这个新建文档按钮试一下
TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。
Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。
AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。
JetBrains 是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是 Java 编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA。
昆明尊园房地产经纪有限公司,即:Kunming Zunyuan Property Agency Company Limited(简称“尊园地产”)于 2007 年 6 月开始筹备,2007 年 8 月 18 日正式成立,注册资本 200 万元,公司性质为股份经纪有限公司,主营业务为:代租、代售、代办产权过户、办理银行按揭、担保、抵押、评估等。
提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。
本标签主要用于分享网络空间安全专业的学习笔记
安全 · 稳定 · 快速
为跨境从业人员提供专业的跨境浏览器
Open Source, Open Mind, Open Sight, Open Future!
Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。
Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。
Postman 是一款简单好用的 HTTP API 调试工具。
面试造航母,上班拧螺丝。多面试,少加班。
如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。
CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。
Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。
快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。
OpenResty 是一个基于 NGINX 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。
用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖。
用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/
找到自己的位置,萌新烦恼少。
上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)
Web Components 是 W3C 定义的标准,它给了前端开发者扩展浏览器标签的能力,可以方便地定制可复用组件,更好的进行模块化开发,解放了前端开发者的生产力。
ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。