如何选择除“this”之外的所有div的div,而不是下一个和前一个div?下面的代码选择除“this”之外的所有内容:
$(".image-div").not(this).each(function() {
$(this).animate({
width: '250px'
}, 500, function() {
// Animation complete.
});
}
});
谢谢
更新 - 这是我的完整代码:
$(".image-div").click(function () {
if ($(this).css('width') != '500px') {
$(this).animate({
width: '500px'
}, 500, function() {
// Animation complete.
});
$(this).prev().animate({
width: '125px'
}, 500, function() {
// Animation complete.
});
$(this).next().animate({
width: '125px'
}, 500, function() {
// Animation complete.
});
} else {
$(this).animate({
width: '250px'
}, 500, function() {
// Animation complete.
});
}
$(".image-div").not(this).each(function() {
$(this).animate({
width: '250px'
}, 500, function() {
// Animation complete.
});
});
});
所有div.image-div的宽度都是250px。我需要它,所以当你点击一个div时,它扩展到500px,它的两边的邻居(也是div.image-div)缩小到125px。
再次单击div时,它和它的邻居重新调整大小为250px。此外,如果你点击另一个div,所有div(除了点击的div及其邻居)重新调整大小为250px。
谢谢
答案 0 :(得分:1)
$(".image-div").click(function() {
$(".imagediv").not($(this)).not($(this).next()).not($(this).prev()).animate({
width: '+=250px'
}, 500);
});
答案 1 :(得分:0)
我根据自己的理解改变了一点,但你应该能够弄明白。这很邋,,但它确实有效。
var divClicked = $(this);
$(".image-div").not(divClicked).not($(".image-div").next()).not($(".image-div").prev()).each(function() {
$(this).css({
background: 'blue'
});
});