【问题标题】:How to get crossSlide and lightbox2 working together on the same page如何让 crossSlide 和 lightbox2 在同一页面上协同工作
【发布时间】:2025-11-22 23:50:01
【问题描述】:

(横向滑动)

(灯箱)

这是我的标题:

<script type="text/javascript" src="<?php echo ROOT.'sources/js/jquery.js'; ?>"></script>
<script type="text/javascript" src="<?php echo ROOT.'sources/js/contentSlider/jquery.cross-slide.js'; ?>"></script>
<link rel="stylesheet" href="<?php echo ROOT.'sources/css/lightbox.css'; ?>" type="text/css" media="screen" />
<script type="text/javascript" src="<?php echo ROOT.'sources/js/lightbox/prototype.js'; ?>"></script>
<script type="text/javascript" src="<?php echo ROOT.'sources/js/lightbox/scriptaculous.js?load=effects,builder'; ?>"></script>
<script type="text/javascript" src="<?php echo ROOT.'sources/js/lightbox/lightbox.js'; ?>"></script>

这是我的身体:

 <script type="text/javascript">
 $(function() {
    $('#imgHold').crossSlide({
      sleep: 3,
      fade: .5
    }, [
      { src: 'images/featured/ftcont_img1.png' },
      { src: 'images/featured/ftcont_img2.png' },
      { src: 'images/featured/ftcont_img3.png' },
      { src: 'images/featured/ftcont_img4.png' }
    ]);
 });
 </script>
 <div id="ftIMG"><div id="imgHold">Loading...</div></div>

我没有使用此页面上的灯箱脚本的任何内容。但我希望将脚本保留在标题中,所以在 PHP 中我只需要调用 1 个标题。 LightBox“手册”说要添加“initLightbox();到body标签上的onload属性,所以我这样做了,没有任何改变。现在我还在其他地方读到了一个(jQuery.no-conflict),我想知道这是否将是继续的方式。或者是否有其他方法可以解决此问题。

另外,如果我想在同一页面上使用 (ThickBox3.1) 与其他所有内容。有可能吗,具体怎么做?

另外,很抱歉没有将它们作为链接发布,显然新用户不允许发布超过 1 个链接。

【问题讨论】:

  • jQuery,原型脚本?哎呀!

标签: javascript jquery thickbox lightbox2


【解决方案1】:

尝试将您的代码 sn-p 更改为以下内容:

jQuery(function() {
    jQuery('#imgHold').crossSlide({
      sleep: 3,
      fade: .5
    }, [
      { src: 'images/featured/ftcont_img1.png' },
      { src: 'images/featured/ftcont_img2.png' },
      { src: 'images/featured/ftcont_img3.png' },
      { src: 'images/featured/ftcont_img4.png' }
    ]);
 });

只要页面上没有其他冲突,这可能会起作用。

请参阅 docs.jquery.com 上的 this article,了解如何将 jQuery 与原型和 scriptaculous 等其他库一起使用,您在示例中都使用了这两个库。

【讨论】:

  • 谢谢!这正是我正在寻找的东西。但是当我测试灯箱脚本时,它不会加载任何功能按钮(下一个、上一个、关闭)。我不确定这是否是我的问题,我弄乱了链接,所以我会看看,但感谢帮助我让 crossSlide 工作。
  • 不用担心。您的另一个问题与图像路径有关。您需要编辑 lightbox.js 来更新这些 - 它们非常接近顶部。
  • 我修复了图像路径,但仍然无法正常工作。有什么想法吗?
  • 您 100% 确定他们是正确的?如果您右键单击并“检查元素”(在 Firefox 中使用 Chrome 或 Firebug)关闭按钮的位置,然后查看 img 标签。 src 是否指向您在服务器上拥有图像的位置?
  • 你能发布一个链接到你的例子吗?
最近更新 更多