You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

学校禁用CTRL+U,自动跳转view-source页面的JS脚本报错求助

问题解决:自动跳转至网页源代码页面的JS脚本修复

错误原因分析

  • 第一段代码误用fetch:fetch是用于发起HTTP/HTTPS请求获取资源的API,完全不处理view-source:这种浏览器内部协议,而且它返回的是Promise对象,直接赋值给location.href会导致浏览器解析错误,返回"bad request"。
  • 第二段代码直接赋值location.href的问题:部分浏览器会把view-source:当成普通字符串而非内部协议,无法触发源代码查看功能,因此跳转后显示空白页面。

正确实现代码

方式1:在新窗口打开源代码

window.open(`view-source:${window.location.href}`);

方式2:在当前页面跳转

const sourceUrl = `view-source:${window.location.href}`;
const link = document.createElement('a');
link.href = sourceUrl;
link.target = '_self';
link.click();

说明

使用window.open或者创建a标签模拟点击的方式,浏览器能正确识别view-source:这个内部协议,从而正常跳转到对应的网页源代码页面,规避直接赋值location.href带来的协议解析问题。

内容的提问来源于stack exchange,提问作者Hyyped

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 15:37:33