Javascript 仅在某些页面上运行库脚本

Javascript 仅在某些页面上运行库脚本,javascript,gallery,Javascript,Gallery,我在我的网站上使用了一个带有缩略图的图库脚本 它工作得很好,但是当你转到主页(第三篇文章向下),它就停止工作了。是不是因为我有另一篇文章用同样的脚本干扰了我 任何帮助都将不胜感激,谢谢 脚本使用ID来定位要显示的图片。Id应该是唯一的,只有一个元素可以有任何给定的Id 您的两个库的img共享相同的ID:#pic-0、#pic-1等。因此,单击,仅显示找到的第一个,即第一个库中的img 这应该不是太难解决,但你的许多代码必须是CMS生成的,所以我必须知道你可以改变,以帮助更多 (这是处理您的图库

我在我的网站上使用了一个带有缩略图的图库脚本

它工作得很好,但是当你转到主页(第三篇文章向下),它就停止工作了。是不是因为我有另一篇文章用同样的脚本干扰了我


任何帮助都将不胜感激,谢谢

脚本使用ID来定位要显示的图片。Id应该是唯一的,只有一个元素可以有任何给定的Id

您的两个库的img共享相同的ID:#pic-0、#pic-1等。因此,单击,仅显示找到的第一个,即第一个库中的img

这应该不是太难解决,但你的许多代码必须是CMS生成的,所以我必须知道你可以改变,以帮助更多

(这是处理您的图库的代码:)

评论后编辑:

所以,老实说,你的代码有点乱,要实现干净的东西需要做很多修改。 但是,为了满足您的迫切需要,您应该使用两个showImage功能:

function myshowImages1(id) {
$('.mainPic1').css({'display':'none'}); 
$("#pic-"+id).fadeIn('slow');  
}

function myshowImages2(id) {
$('.mainPic2').css({'display':'none'}); 
$("#pic-"+id).fadeIn('slow');  
}
并编辑您的链接: 第一个画廊。 第二个

请记住,它是丑陋的,不可伸缩的:如果你有三个图库,它会崩溃。 我将看看你的代码,看看你能做些什么来拥有一个独特的功能

编辑2:

因此,您可以使用一个更干净的功能:

1/设置:为每个链接/img对选择一个类名。每个示例:

<a href="" class="image_1">
<img alt="" height="80" src="(some long path)/lookbookcookbooksaya267b.jpg" title="" width="80">
</a>
首先,它在所有链接上绑定一个click事件,这些链接在.gallery元素中有两个div深度。那是你的大拇指。 单击时,它获取单击的thumb链接的类。 然后搜索此链接的父库,隐藏所有图像并显示好的图像


我不能保证它能解决这个问题,因为您的标记非常复杂,但它应该解决

这只是一堆内容。你能缩小一点吗?在实际的帖子中,不是主图片,而是向下滚动时的第二个大图片。下面有三个小缩略图。谢谢!我更改了数字以便现在加载图像,但当我单击一个库中的缩略图时,另一个库中的主图像消失。有什么建议吗?哦,就我所能改变的而言,我实现了整个图库脚本,所以我可以编辑它。这是因为两者都是.mainPic,所以是$('.mainPic').css({'display':'none');两个都是目标!我试着把第二个调到mainPic2,结果弄得有点乱。你介意帮我看一下吗?这是因为两个脚本都名为myshowImages()。我将用更多信息编辑我的答案。好的,谢谢!他们目前正在工作。现在,唯一的问题是,当你点击第二个图库中的缩略图时,页面会跳转。你说的编辑我的链接是什么意思?我知道,一团糟,我真的不知道我在做什么:)
<a href="" class="image_1">
<img alt="" height="80" src="(some long path)/lookbookcookbooksaya267b.jpg" title="" width="80">
</a>
<a href="(some long path)/lookbookcookbooksaya267.jpg">
<img alt="" class="image_1" height="470" src="(some long path)/lookbookcookbooksaya267.jpg"></a>
$(document).ready(function()
{
     $(".gallery div div a").on("click",function()
     {
     var myClass = $(this).attr('class');
     var $parentGallery = $(this).parents('.gallery');
     $parentGallery.find("div > a > img").css("display","none").find("myClass").fadeIn();
     return false;
    });
});