seehttps://ld246.com/article/1726930314271//判断脚本是否开启//通过唯一标志符判断是否启用此脚本,注释中的 uuid 不要删除,也可以改成其他全局唯一字符串//也可以通过/api/snippet/getSnippet 来判断脚本开启状态,这里采用判断脚本是否存在的方式//调用方式 isEnabled()letscriptId='';functionisEnable
//功能:建文档的时候自动设置为自定义的某个图标//seehttps://ld246.com/article/1726920727424(()=>{//默认图标//根据 iconType 参数不同而不同//当 iconType 参数是 keyword 时,该值是关键词,如:嘿嘿,获取方式参考 iconType 参数//当 iconType 参数是 unicode 时,该词是表情 unicode,如:1f4c4,获取方式请参考
seehttps://ld246.com/article/1726880977052//!jsreturn(async()=>{///////参数配置区/////////需要转换的文档 idconstdocBlockId='20240916174656-fv3lpy5';//源标题 constsrcHead='h2';//目标标题 consttoHead='h3';///////主逻辑区/////////
//功能:给编辑器增加标尺//seehttps://ld246.com/article/1725849206361(()=>{////////////配置区//////////////////////标尺的间隔大小,默认 50(50 代表 50px 高度)construlerGaps=50;////////////主逻辑区////////////////////addRulerStyle();whenEl
//audioURLvaraudioSrc="";//父 id 或文档 id,必填 varparentID="20240912201455-z7c6sgc";//插入到哪个块下面,为空插入到第一行 varpreviousID="20240919194802-ig3zntk";//生成块 idvarnewNodeId=Lute.NewNodeID();//生成更新时间 varupdated=formatDateTi
在 JavaScript 中获取选中文字所在的元素可以通过 window.getSelection()方法来实现。此方法返回一个 Selection对象,该对象提供了有关当前文档中选定文本的信息。如果选中的文本跨越了多个元素,可以通过 Selection对象的 getRangeAt()方法来获取选定范围的信息。getRangeAt()方法返回一个 Range对象,该对象描述了选定文本的范围。下面是一个
获取选中文本可以通过 JavaScript 的 window.getSelection()方法来实现。这个方法返回一个 Selection对象,它包含了当前文档中选定的文本信息。你可以从这个对象中获取选定的范围,并从中提取出选定的文本。下面是一个简单的示例,展示了如何获取用户选定的文本,并将其输出到控制台或页面上的某个元素中:HTML 示例代码 <!DOCTYPEhtml><htmllang="en"><h
要在 JavaScript 中对选中的文本添加颜色,可以通过监听用户的文本选择事件,然后修改选定文本所在的元素的样式来实现。这里有一个基本的示例,演示如何在用户选定文本后为其添加颜色。首先,我们需要监听 mouseup事件,因为这是用户完成文本选择的一个标志。然后,我们可以获取当前文档中的选定范围,并应用相应的样式。以下是一个简单的例子:<!DOCTYPEhtml><htmllang="en"><hea
又名获取鼠标所在元素 functiongetCursorElement(){constselection=window.getSelection();if(selection.rangeCount>0){constrange=selection.getRangeAt(0);//获取选择范围的起始位置所在的节点 conststartContainer=range.startContainer;//如果起始
获取当前文档对象//pcsiyuan.layout.centerLayout.children.map(item=>item.children.find(item=>item.headElement?.classList.contains('item--focus')&&(item.panelElement.closest('.layout__wnd--active')||item.panelEle
@mediascreenand(max-width:768px){#menuSafeQuit,#menuSafeQuitsvg{color:var(--b3-theme-error);}}
seehttps://ld246.com/article/1726473563881//!jsreturn(async()=>{///////主逻辑区/////////sql 查询 constsql=`selectmarkdownfromblockswheretype='p'andmarkdownlike'% 工具 %'`;constresult=awaitquery(sql);//无数据提示 if(res
functionshowMessage(message,timeout=6000,type="info",messageId){constmessagesElement=document.getElementById("message").firstElementChild;if(!messagesElement){alert(message);return;}constgenUUID=()=>([
Ctrl+Shift+ 左右方向箭头选中块内的元素,包括引号,语句块等,多次按可以扩选,如果超出了块内容,可以送开 alt 键盘,按相反方向键取消多余部分选择。Ctrl+-跳到上一次访问的地方 shift+ctrl+-跳到下一次访问的地方 ctrl+alt+k 添加书签 CTRL+SHIFT+L:选择所有出现的当前选择(选择匹配的高亮单词)CTRL+F2:选择所有出现的当前单词 CTRL+SHIFT+SPACE:触
constgenUUID=()=>([1e7].toString()+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(c)=>(parseInt(c,10)^(window.crypto.getRandomValues(newUint32Array(1))[0]&(15>>(parseInt(c,10)/4)))).toString(16));改成函数 function
constgenUUID=()=>([1e7].toString()+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(c)=>(parseInt(c,10)^(window.crypto.getRandomValues(newUint32Array(1))[0]&(15>>(parseInt(c,10)/4)))).toString(16));改成函数 function
(async()=>{observeEditorLoaded((editor)=>{console.log(editor,'editorloaded');});//监听编辑器被添加 letloading=false;functionobserveEditorLoaded(callback){//创建一个观察者实例并传入回调函数 constobserver=newMutationObserver((mut
严格意义上来说是块的序号.protyle-wysiwyg{counter-reset:line-number;/*初始化计数器*/}.protyle-wysiwyg>div{counter-increment:line-number;/*每个 div 递增计数器*/}.protyle-wysiwyg>div::before{content:counter(line-number)"";/*显示行号*/p
方法 1 效果//!jsreturn(async()=>{constsql=`select*fromblockswheretype='d'limit2;`;constresult=awaitquery(sql);render(result);functionrender(result){lethtml='';result.forEach(item=>{html+=`<divclass="protyle-
seehttps://ld246.com/article/1725076848647效果代码//!js//seehttps://ld246.com/article/1725076848647return(async()=>{////////主逻辑区//////////////待查询的 SQL 语句 constsql=`select*fromblocks--仅筛选文档块 wheretype='d'--查询某