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

JS中window.open()触发HTTP Error 404.0 - Not Found问题求助

解决点击按钮打开新页面后原页面出现404的问题

问题出在你home.js里的函数写法上——你错误地把window.open()的返回值赋值给了location.href,这才导致原页面跳转到无效地址触发404。

错误原因解析

window.open("second.html")本身就会在新标签页打开目标页面,它的返回值是新打开窗口的对象,而不是一个合法的URL。当你执行location.href = 这个窗口对象时,JavaScript会把对象转换成字符串"[object Window]",原页面就会尝试导航到这个不存在的路径,服务器自然返回404。

修复方案1:简化JavaScript代码

直接调用window.open()即可,不需要给location.href赋值:

function this_but(){
  window.open("second.html");
}

修复方案2:用HTML原生实现(无需JS)

如果不需要额外的JS逻辑,其实可以直接用<a>标签模拟按钮效果,更符合语义化且更简洁:

<a href="second.html" target="_blank" style="display: inline-block; padding: 3px 10px; border: 1px solid #aaa; border-radius: 2px; background: #f5f5f5; text-decoration: none; color: #333;">Button</a>

这样点击后同样会在新标签页打开second.html,原页面完全不受影响。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 14:42:33