jQuery改变了#34; href"值,但之后没有正确显示

时间:2015-04-28 14:56:10

标签: javascript jquery html

我是网站的新手,希望我能正确地提出这个问题。我在网络上寻找答案,但无法找到任何解决方案。

基本上,我有一张大图并且在一张小图片下面。期望的结果是当点击小图片时,它应该改变具有大图片的地方(小的一个变得大而大变小)。此外,当图片在#big中时,我有一个使用更大版本图片的缩放脚本。这是我的脚本更改和标记

的属性
$('#small img:nth-of-type(1)').click(function(){
        if ($('#med1').attr('src') == 'images/m-<?php echo $src; ?>.jpg') {
              $('#big1').attr('href','images/<?php echo $src; ?>_2.jpg');
              $('#med1 ').attr('src','images/m-<?php echo $src; ?>_2.jpg');
              $('#small img:nth-of-type(1)').attr('src','images/m-<?php echo $src; ?>.jpg');
              console.log($('#big1').attr('href'))
        } else {
                 $('#big1').attr('href','images/<?php echo $src; ?>.jpg');
                 $('#med1 ').attr('src','images/m-<?php echo $src; ?>.jpg');
                 $('#small img:nth-of-type(1)').attr('src','images/m-<?php echo $src; ?>_2.jpg');
                 console.log($('#big1').attr('href'))                               
                }               
});

我使用console.log()来检查脚本是否将正确的参数传递给标记,并且它正在传递正确的参数。但无论出于何种原因它都不起作用(缩放图像不会改变)。这是包含大图片和缩放图片的代码:

<div id="big"> 
  <?php 
        echo "<a href=\"images/"  .$src.  ".jpg\" class=\"zoom\" id=\"big1\"><img src=\"images/m-". $src. ".jpg\" class=\"big\" id=\"med1\"></a>" ; 
        echo "<a href=\"images/"  .$src. "_1.jpg\" class=\"zoom1\" id=\"big2\"><img src=\"images/m-".   $src. "_1.jpg\" class=\"big\" id=\"med2\"></a>" ; 
    ?>
</div>

告诉我你是否需要现场演示才能看到它或任何其他信息。我真的迷失了这个。该脚本成功更改了图片,如果我们可以信任console.log(),它会成功更改标记的href,但在视觉上缩放图像不会改变。请帮忙!

编辑:这是现场演示: http://look.pgmtplovdiv.info/kami/modeli.php?k_nomer=777

2 个答案:

答案 0 :(得分:0)

这是因为您的easyzoom.js文件正在加载图像的副本,以便在您最初调用它时在缩放中显示。鼠标悬停然后使用该图像。你需要改变它。

答案 1 :(得分:0)

使用以下句子激活缩放功能:$('a.zoom').easyZoom();。更新映像时,还必须更新缩放功能。您可以在更新href:$('#big1').easyZoom();后尝试使用此功能。