2012-01-01 95 views
3

JSFIDDLE HEREIMG缩略图单击以缩略图标题

替换格文本值如果你看看JS拨弄你会发现点击thumbail藏汉改变图像为.currentimgtitle文本值,但它改变了网页上的所有.currentimgtitle文本值当我只想要一个有关改变它的jQuery和HTML低于

$(".imgcontainer").each(function() { 
    var imgsrc = $(".minicontainer img:first-child", this).attr("src"); 
    var imgtitle = $(".minicontainer img:first-child", this).attr("title"); 
    $(this).append('<div class="presentouter"><img src="' + imgsrc + '" class="presentimg"/><div class="currentimgtitle" title="' + imgtitle + '">' + imgtitle + '</div></div>'); 
}); 
$(".miniimg, .miniimg2, .miniimg3").click(function() { 
    var miniimgrc = $(this).attr("src"), 
     $presentImg = $(this).closest(".imgcontainer").find(".presentimg"); 

    $presentImg.attr('src', miniimgrc); 
}); 
$(".miniimg, .miniimg2, .miniimg3").click(function(index) { 
    var miniimgtitle = $(this).attr("title"), 
     $presentTitle = $(this).closest(".imgcontainer").find(".currentimgtitle"); 

    $presentTitle.attr('title', miniimgtitle); 

}); 
$(".imgcontainer").each(function(index) { 
$(".miniimg, .miniimg2, .miniimg3").click(function() { 
    var textval = $(this).attr("title"); 
    $(".currentimgtitle").text(textval); 
}); 
}); 
<div class="imgcontainer"> 
    <div class="minicontainer"> 
    <img src="http://lh3.googleusercontent.com/_Zuzii37VUO4/Ta0nUeMwXoI/AAAAAAAAFoc/7f0Um7OTgNg/s000/Antartic-by-Peter-Rejcek.jpg" title="icy mountains" class="miniimg"/> 
    <img src="http://lh3.googleusercontent.com/_Zuzii37VUO4/Ta0nUFUhg6I/AAAAAAAAFoY/GToUxRYcteY/s000/Antartic-by-Kelly-Speelman.jpg" title="icy planes and hills" class="miniimg2"/> 
    <img src="http://lh4.googleusercontent.com/_Zuzii37VUO4/Ta0nTs8AbPI/AAAAAAAAFoU/zCvNKv4kfe4/s000/BeachWaves-By-RePublicDomain.jpg" title="sun rise with clouds" class="miniimg3"/> 
    </div> 
</div> 

<div class="imgcontainer"> 
    <div class="minicontainer"> 
    <img src="http://3.bp.blogspot.com/-EyJOI3UFWvo/Te5KHGgOpSI/AAAAAAAAESY/PhG66jWB1OA/s200/blogger-featured-slideshow.png" title="Blogger Logo" class="miniimg"/> 
    <img src="http://2.bp.blogspot.com/-BKPnpE6QpfY/TewL7Q16ipI/AAAAAAAAERg/pxn6NY1nNsg/s640/best-blogger-template-stunning-slider-magazine.PNG" title="blogger template" class="miniimg2"/> 
    <img src="http://4.bp.blogspot.com/-gxaZr19LXtY/TdRcJrxv3gI/AAAAAAAAD68/KaX9UN0B2nE/s640/advanced-design-magazine-blogger-template.PNG" title="another blogger template" class="miniimg3"/> 
    </div> 
</div> 
+0

也许我只是你提供了一个+1,询问一个连贯的问题,包括(和格式正确!)码***和***链接的功能例如..!啊...这样一个很好的改变=) – 2012-01-02 00:05:08

+0

谢谢:)我真的很高兴我发现了一个社区互相帮助的Stackoverflow! – Fiddler 2012-01-02 00:13:00

+0

BTW香港专业教育学院更新它检查出来这里http://jsfiddle.net/Plugins4/T3J3r/49/ – Fiddler 2012-01-02 00:14:04

回答

2

你为什么不改变

$(".currentimgtitle").text(textval); 

$(this).closest(".imgcontainer").find(".currentimgtitle").text(textval); 

像你这样做了几行?

+0

http://jsfiddle.net/Plugins4/T3J3r/29/没了不起作用不幸 – Fiddler 2012-01-01 23:38:18

+0

对不起,误差小。使用'$(本).closest( “imgcontainer ”)找到(“ currentimgtitle。”)文本(textval);'而不是 – user823255 2012-01-01 23:41:30

+0

当我想通了这一点的时候,我看到你的答案是完全正确的。 +1 – 2012-01-01 23:43:24

3

虽然我看你已经接受了答案,这种做法似乎工作得很好:

$('.minicontainer img').click(
    function(){ 
     var miniImgSrc = this.src, 
      imgTitle = this.title, 
      $container = $(this).closest('.imgcontainer'); 
     $container 
      .find('.presentimg') 
      .attr('src',miniImgSrc); 
     $container 
      .find('.currentimgtitle') 
      .attr('title',imgTitle) 
      .text(imgTitle); 
    }); 

JS Fiddle demo

参考文献:

+0

三江源这是一个非常巧妙的解决办法:) – Fiddler 2012-01-01 23:49:44

+0

非常欢迎;很高兴能有帮助=) – 2012-01-01 23:59:03