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

如何将PHP的GET参数id传入外部JS文件并修正跨域跳转逻辑?

问题解决方法

你的custom.js代码存在语法错误和逻辑冗余,以下是具体修正方案:

错误点说明

  1. 字符串拼接语法错误:'https://' + id '.example2.com' 与 'https://' + id '.example2.com' 中,变量id和后续字符串之间缺少+连接符,会直接导致JS执行报错。
  2. 无效的replace参数:'dir/' + id '' 多了冗余的空字符串,且原页面路径是dir/index.php?id=name,这个替换目标本身不存在,逻辑不成立。

修正后的代码

如果需求是屏幕宽度小于991时,直接跳转到https://{id}.example2.com,可以简化逻辑:

if (screenWidth < 991) {
    window.location.href = 'https://' + id + '.example2.com';
}

如果需要保留类似原代码的页面类型判断逻辑(比如避免xhtml页面跳转),修正语法后的代码如下:

if (screenWidth < 991) {
    var targetUrl = 'https://' + id + '.example2.com';
    if (targetUrl.indexOf('xhtml') === -1) {
        window.location.href = targetUrl;
    }
}

额外优化建议

PHP输出变量到JS时,建议用json_encode转义,避免特殊字符(如引号)导致的JS语法错误或XSS风险:

<script type="text/javascript">var id = <?= json_encode($id) ?>;</script>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 09:05:23