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

window.open()调用突发‘Unrecognised Expression’错误求助

解决window.open()触发jQuery "Unrecognised Expression"错误的方案

兄弟,我之前踩过一模一样的坑!这个错误看着像是window.open()的锅,但根本和这个函数没关系——问题出在你触发这个函数的代码里,不小心把那个URL当成了jQuery选择器来解析,才导致jQuery抛出这个语法错误。

最常见的两种出错场景:

  • 事件绑定多写了括号
    比如你可能写了这样的代码:

    // ❌ 错误:spotify()会立即执行,后续逻辑可能误处理返回值
    $('#my-button').click(spotify());
    

    正确的写法应该是传递函数引用,别加括号:

    // ✅ 正确:只传函数名,点击时才会执行
    $('#my-button').click(spotify);
    
  • 不小心把URL传给了jQuery选择器
    比如你在函数里多写了一行多余的代码,把URL用$()包裹了:

    function spotify() {
      const url = "https://www.google.com";
      $(url); // ❌ 这行完全没必要!jQuery会把URL当成选择器解析
      window.open(url);
    }
    

    删掉那行多余的$(url)就解决了。

另外也检查下你的HTML触发方式:如果用按钮或者链接触发,别在onclick里写错语法,比如别漏了函数调用的括号:

<!-- ✅ 正确写法 -->
<button onclick="spotify()">打开页面</button>

快速验证方法:

直接在浏览器控制台里输入spotify(),如果能正常弹出新窗口,那百分百是触发逻辑的问题,和window.open()本身完全无关。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:30:43