首页 > 解决方案 > jQuery navbar 与 lightbox++ 冲突

问题描述

所以我的网站上有一个灯箱++,我在网站的移动查询部分的导航栏上使用了一个 jquery,从我收集到的信息来看,它们相互冲突。

我尝试使用放置在 jquery 脚本标签上方和下方的 $.noConflict() 以及基本上所有地方,但没有任何效果。但是放置 noConflict 线会扭转当时有效的方法。因此,如果 navBar 在没有 noConflict 行的情况下工作,添加了该行,它将无法工作,但 lightbox 会工作,等等,反之亦然。所以它以某种方式影响着某些东西。

我只是不是一名开发人员,也不是足够沉浸在这些东西中,无法让导航栏和灯箱简单地一起工作。

我看到的一些使用假定解决方案的网站,不要考虑像我这样的菜鸟,因为我在我的网站上使用了确切的代码行,所以他们需要刻意了解 noConflict 行的确切位置以及如何修改它。

真令人沮丧。

这是我正在处理的测试页面:https ://www.solarinkgraphics.com/index_TEST002.html

这是链接在我的 html 正文中的 lightbox++ 文件,位于 jquery 上方:

<script src="js/prototype.js" type="text/javascript"></script>
    <script src="js/scriptaculous.js?load=effects" type="text/javascript"></script>
    <script src="js/lightbox++.js" type="text/javascript"></script>
    
    <script type="text/javascript">
    function GroupDelegate(id) {
        var objLink = document.getElementById(id);
        Lightbox.prototype.start(objLink);
    }
    
    </script>
    
    <script type="text/javascript">
    lightbox.option({
      'fitImagesInViewport': true,
      'wrapAround': true
    })
    </script>

这是 jquery 和 javascript 文件,链接在我的 HTML 正文中,位于灯箱文件下:

<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="js/menu.js"></script>

标签: jquerylightbox

解决方案


如果你谈论这个“冲突”,那么没关系,你必须设置哪个对象应该用户灯箱

<script type="text/javascript">
   lightbox.option({
     'fitImagesInViewport': true,
     'wrapAround': true
   })
</script>

现在 javascript 为选项方法寻找对象灯箱,但没有灯箱对象:)

例如:

<script type="text/javascript">
   $('.my a tag with image).lightbox({  
     'fitImagesInViewport': true,
     'wrapAround': true
   })
</script>

// 添加一个 class='myclass_1" 等<a class=''>,然后将它们放入 ".my 一个带有图像的标签,如$('.my_class_1).lightbox....

总的来说,你的代码很混乱:)


推荐阅读