JSFIDDLE HERE
按下.miniimg/2/3
它应该替换我使用jquery附加到div .presentimg
的img分类.imgcontainer
的src,我已经通过jQuery (低于HTML) 和我认为它不会工作的唯一原因是因为我在函数中使用了一个函数而我不知道另一种方法
<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>
jquery,在jquery中我使用(索引)外部.each函数,因为我在论坛上看到它,但我不知道这是否真的不合适
$(".imgcontainer").each(function(){
var imgsrc = $(".minicontainer img:first-child").attr("src");
$(this).append('<img src="'+imgsrc+'" class="presentimg"/>');
});
$(".miniimg").each(function(index){
var $this = $(this);
$(this).click(function(){
var miniimgrc = $this.attr("src");
$(".presentimg").atrr('src', miniimgrc);
});
});
$(".miniimg2").each(function(index){
var $this = $(this);
$(this).click(function(){
var miniimgrc2 = $this.attr("src");
$(".presentimg").atrr('src', miniimgrc2);
});
});
$(".miniimg3").each(function(index){
var $this = $(this);
$(this).click(function(){
var miniimgrc3 = $this.attr("src");
$(".presentimg").atrr('src', miniimgrc3);
});
});
答案 0 :(得分:1)
实际上,我认为你的问题是你有attr
的几个拼写错误:
$(".presentimg").atrr('src', miniimgrc3);
应该是:
$(".presentimg").attr('src', miniimgrc3);
更新了小提琴: http://jsfiddle.net/nv9em/
此外,您可以将代码缩短为一个事件处理程序:
$(".imgcontainer").each(function() {
var imgsrc = $(".minicontainer img:first-child").attr("src");
$(this).append('<img src="' + imgsrc + '" class="presentimg"/>');
});
$(".miniimg, .miniimg2, .miniimg3").click(function() {
var miniimgrc = $(this).attr("src");
$(".presentimg").attr('src', miniimgrc);
});
更新了小提琴: http://jsfiddle.net/Fr5yW/