稀土掘金技术社区 04月19日
只需一行代码,任意网页秒变可编辑!
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文分享了一个实用的前端技巧,只需一行JavaScript代码即可让任何网页瞬间变成可编辑状态。通过设置`document.designMode = "on"`,用户可以在浏览器控制台中直接修改网页内容,包括文字、图片等。文章还介绍了与`designMode`相关的`contentEditable` API,以及`execCommand`(已弃用)的相关信息,帮助读者了解和应用这一前端技巧。

✨ 核心功能:通过在控制台输入`document.designMode = "on"`,即可使整个网页变为可编辑状态,方便修改页面内容。

💡 实现方式:该功能利用了`document.designMode`属性,该属性控制整个文档是否可编辑,有效值为"on"和"off"。

🌐 兼容性:该技术在现代浏览器中得到广泛支持,几乎所有浏览器都兼容此功能,包括通过`iframeNode.contentDocument.designMode = "on"`实现对Iframe嵌套页面的编辑。

⚙️ 关联API:文章还介绍了与`designMode`功能类似的`contentEditable`属性,`contentEditable`可以使特定的 DOM 元素变为可编辑,而`designMode`只能使整个文档可编辑。

原创 石小石Orz 2025-04-12 09:00 重庆

点击关注公众号,“技术干货”及时达!

关注更多AI编程资讯请去AI Coding专区:https://juejin.cn/aicoding

「大家好,我是石小石!」

在我们日常工作中,可能会遇到截图页面的场景,有时页面有些内容不符合要求,我们可能需要进行一些数值或内容的修改。如果你会 PS,修改内容难度不高,如果你是前端,打开控制台也能通过修改 dom 的方式进行简单的文字修改。

今天,我就来分享一个冷门又实用的前端技巧 —— 只需一行 JavaScript 代码,「让任何网页瞬间变成可编辑的!」 先看看效果:

甚至,还可以插入图片等媒体内容

如何实现

很难想象,这么炫酷的功能,居然只需要在控制台输入一条指令:

document.designMode = "on";


打开浏览器控制台(F12),复制粘贴这行代码,回车即可。

如果你想关闭此功能,输入document.designMode = "off"即可。

Document:designMode 属性

MDN 是这样介绍的:

document.designMode 控制整个文档是否可编辑。有效值为 "on" 和 "off"。根据规范,该属性默认为 "off"。Firefox 遵循这一标准。早期版本的 Chrome 和 IE 默认为 "inherit"。从 Chrome 43 开始,默认为 "off" 并不再支持 "inherit"。在 IE6-10 中,该值为大写。

兼容性方面,基本上所有浏览器都是支持的。

借助次 API,我们也能实现 Iframe 嵌套页面的编辑:

iframeNode.contentDocument.designMode = "on";


关联 API

与 designMode 关联的 API 其实还有 contentEditable 和 execCommand(已弃用,但部分浏览器还可以使用)。

contentEditabledesignMode功能类似,不过contentEditable可以使特定的 DOM 元素变为可编辑,而designMode只能使整个文档可编辑。

特性
contentEditabledocument.designMode
作用范围
可以使单个元素可编辑
可以使整个文档可编辑
启用方式
设置属性为 true或 false
设置 document.designMode = "on"
适用场景
用于指定某些元素,如 <div><span>
用于让整个页面变为可编辑
兼容性
现代浏览器都支持
现代浏览器都支持,部分老旧浏览器可能不支持

document.execCommand() 方法允许我们在网页中对内容进行格式化、编辑或操作。它主要用于操作网页上的可编辑内容(如 <textarea> 或通过设置 contentEditable 或 designMode 属性为 "true" 的元素),例如加粗文本、插入链接、调整字体样式等。由于它已经被 W3C 弃用,所以本文也不再介绍了。

点击关注公众号,“技术干货” 及时达!

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

前端技巧 JavaScript designMode contentEditable
相关文章