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

移动端导航栏jQuery与lightbox++冲突,$.noConflict()用法求助

冲突解决步骤

冲突根源为lightbox++依赖的Prototype库与jQuery默认都占用$作为全局变量别名,按以下步骤修改即可实现两个功能同时正常运行:

步骤1:调整jQuery引入段代码

将原jQuery引入及后续代码替换为以下内容:

<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script>
// 释放$符号控制权还给Prototype,jQuery后续使用自定义别名jq调用
var jq = jQuery.noConflict();
</script>
<script src="js/menu.js"></script>

步骤2:修改menu.js适配jQuery别名(二选一即可,推荐方案一)

方案一(无需改动menu.js原有逻辑,操作最简单)

打开站点目录下的js/menu.js文件:

  • 在文件最顶部新增一行代码:
(function($){
  • 在文件最底部新增一行代码:
})(jq);

修改后menu.js内部原有所有$符号会自动指向jQuery,无需调整原有功能代码。

方案二(全量替换)

将menu.js文件内所有出现的$符号全部替换为jq即可。

修改完成后刷新页面即可同时正常使用lightbox++图片放大功能与移动端导航栏功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:06:03