摘要:HTML中的 <a> 标签的 rel 属性用于定义与链接文档的关系。 当 rel="noopener" 被使用时,它表示链接的目标文档不应该拥有对原始文档的任何引用能力。 具体来说,这意呈现在以下几点: 1 . 安全增强: 当一个链接在一个新的浏览上下文中打开(例如一个新的标签页或窗口),rel="
阅读全文
摘要:开发浏览器Extension(扩展)和油猴脚本(通常指的是Tampermonkey这样的用户脚本管理器)虽然都可以增强浏览器功能,但它们在多个方面存在显著的差异。 以下是全方位的对比: 1 覆盖范围: 浏览器扩展:通常提供全局性的增强,影响整个浏览器或特定类型的网页,可以修改浏览器界面、提供新的功能
阅读全文
摘要:油猴脚本(通常指使用用户脚本管理器如 Tampermonkey 运行的 JavaScript 脚本)具有多种用途,主要用于增强或定制网页浏览体验,实现自动化操作,以及解决特定网站的功能缺失或不便之处。 以下列举了一些油猴脚本的主要用处: 1.个性化网页布局与样式: 修改网页主题色、字体、间距等,实现
阅读全文
摘要:在 Node.js 中,原生并不支持 ES6 的 import 语句来引入模块。 不过从 Node.js v12 开始,通过实验性功能(--experimental-modules)可以使用 .mjs 扩展名的文件来启用对 ES6 模块的支持,并使用 import 语句。 新版本 Nodejs 已移
阅读全文
摘要:ES6 规范:export 和 import 配对 import 的 {} 大括号里面指定要从其他模块导入的变量名, 如果 export 命令没有写 default,那么 import {} 大括号里面的变量名,必须与 export 导出的名称相同。 export default 为模块指定默认输出
阅读全文
摘要:在JavaScript ES6模块系统中,export default {} 和 export {} 有明显的区别: 1. export default {}: 这个语法用于导出一个默认的模块成员,它可以是一个对象、函数、类等。当导入时,可以使用任何名称来引用这个默认导出的成员,或者不指定名称直接导
阅读全文
摘要:一种方式是,清空输入框可以通过如下注入代码实现,但是可能存在 和页面本身的操作 存在优先级问题。 await page.evaluate( () => document.getElementById("inputID").value = "") 推荐另一种方式,用 puppeteer 对页面元素执行
阅读全文
摘要:Puppeteer API: https://puppeteer.bootcss.com/api 1. 安装: $ yarn add puppeterr 2. 网页截图实例: // main.jsconst puppeteer = require('puppeteer'); (async () =>
阅读全文
摘要:Puppeteer 和 cheerio 是两个完全不同的库,用途和功能也截然不同。 Puppeteer 是一个 Node.js 库,它使用 Chrome 或 Chromium 浏览器作为渲染引擎,通过使用 Chrome 的 Headless 模式进行网页的解析和操作。 它提供了一组 API,可以让用
阅读全文
摘要:Q: 对于一个 html 的 select 标签节点 class是module_select,获取选中值使用 $('.module_select').find('option:selected').val() 和 $('.module_select').val() 有什么区别 A: $('.modu
阅读全文
摘要:下载 git 版本控制系统:https://pc.qq.com/search.html#!keyword=git 下载 TortoiseGit 客户端:https://pc.qq.com/search.html#!keyword=git 下载 vscode 编辑器:https://pc.qq.com
阅读全文
摘要:从 egg 项目配置里找到这一段代码: https://github.com/eggjs/egg/blob/master/config/config.default.js#L205C21-L205C74 /** * The option of `siteFile` middleware * * Yo
阅读全文
摘要:Q:用了 sortable 组件,在火狐浏览器中进行拖拽时,会打开新窗口 ? Sortable组件地址,https://github.com/SortableJS/Sortable 当前处理方式 阻止火狐浏览器中打开新窗口。 产生原因 Chatgpt : Other:HtmlCheck Link:h
阅读全文
摘要:html5 新属性 referrerpolicy: referrerpolicy no-referrer no-referrer-when-downgrade origin origin-when-cross-origin same-origin strict-origin-when-cross-o
阅读全文
摘要:The X-Frame-Options HTTP 响应头是用来给浏览器 指示允许一个页面 可否在 <frame>, <iframe>, <embed> 或者 <object> 中展现的标记。 站点可以通过确保网站没有被嵌入到别人的站点里面,从而避免 clickjacking 攻击。 The adde
阅读全文
摘要:.prop() 获取匹配的元素集中第一个元素的属性(property)值 或 设置每一个匹配元素的一个或多个属性。 当设置 selectedIndex, tagName, nodeName, nodeType, ownerDocument, defaultChecked, 或 defaultSele
阅读全文
摘要:1.setTimeout 匿名函数传参问题,匿名函数形参是不能直接在内部使用的,匿名函数传参需要按顺序从 setTimeout 的第三个参数开始依次传递。 2. Js clone出来的 dom 节点,会带上第一条记录的选中值以及修改后的value,不清理初始化 会导致选项值不匹配而无法选中。 3.
阅读全文
摘要:svg 概念一览: https://javascript.ruanyifeng.com/htmlapi/svg.html加载 svg: // for example: $('body').load('http://xxx.svg'); 动态修改 svg 属性: // for example: $('
阅读全文
摘要:改导航文字: uni.setNavigationBarTitle({ title: 'xx' }); 改 tabBar 文字: uni.setTabBarItem({ index: 0, text: 'xx' }); Refer:uni-app自定义导航 Link:https://www.cnblo
阅读全文
摘要:使用 npm、yarn 方式安装的包,虽方便使用,但是会极大增加 vendor.xx.js 体积,拖慢网站运行速度。 以 G2Plot 为例,实际在 build 构建时,会下载一些额外字体到 vendor.xx.js 中。 要解决这个问题,选择引入 CDN 是比较常见的方式,在 Vue 中可以参考如
阅读全文