我在HTML中有这个:
<a class="clickImage" href="http://domain.com/a_0_full.jpg" data-lightbox="group">initialize</a>
<a class="imageZoom" href="http://domain.com/a_0_full.jpg"></a>
<a class="imageZoom" href="http://domain.com/a_1_full.jpg"></a>
我想为data-lightbox
提供不同的a.imageZoom
(noGroup)href
与a.clickImage
相同data-lightbox
(群组){{1} }}
这是我试过的:
href
根据我的理解,它为$(document).ready(function() {
$(".clickImage").click(function() {
var addressValue = $(this).attr("href");
$(".imageZoom").attr('data-lightbox','group');
if($('.imageZoom').attr('href') == addressValue) {
$(this).attr('data-lightbox','noGroup');
}
});
});
的所有链接提供了noGroup
。
我做错了什么?
答案 0 :(得分:1)
您需要使用.filter()
来过滤掉与变量addressValue
中具有相同href的元素。然后将属性data-lightbox
设置为no-Group
给他们:
$('.imageZoom').filter(function(){
return $(this).attr('href') == addressValue;
}).attr('data-lightbox','noGroup');
答案 1 :(得分:0)
可能就是这样:
$(".clickImage").click(function() {
var addressValue = $(this).attr("href");
$(".imageZoom").attr('data-lightbox', function(i) {
return (addressValue == $(this).attr('href')) ? "noGroup" : "group";
});
return false;
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="clickImage" href="http://domain.com/a_0_full.jpg" data-lightbox="group">initialize</a>
<a class="imageZoom" href="http://domain.com/a_0_full.jpg">one</a><!--applies noGroup to this.-->
<a class="imageZoom" href="http://domain.com/a_1_full.jpg">two</a>
&#13;