Вот fiddle для ниже.hover image с помощью jQuery's toggle() не работает в jsfiddle
Причиной создания этого jsfiddle является то, что animate()
не работает внутри функции fadeOut()
, но работает вне:
$(".fader").click(function (e) {
var self = this;
$('.fader').not(self).fadeOut(function() {
$(self).animate({top: "220",left: "200"}); // doesn't work
LoadContent(fader.attr('id')); // works
});
$(this).animate({top: "220", left: "200"}); // works
});
EDIT: хорошо, я вижу почему-то теперь, что одушевленные() не работать - Я вызывал неправильный элемент (вместо self
, который исправил jsfiddle). но все же я не знаю, почему toggle() не работает в jsfiddle.
так как я применяю нажмите событие для объекта, который нажал вместо всего класса? Я использую '$ (this)', потому что я думал, что это относится только к одному объекту (как в соответствии с этим [thread] (http://stackoverflow.com/questions/16166561/jquery-change-for-only-clicked -element-not-all-with-the-same-class)), я ошибаюсь? 'animate' предназначен для запуска в конце' fadeOut' - это нормально для меня, поэтому nvm об этом. –
$ (это) хорошо, но ваш селектор $ ('. Fader'). Not (this) означает -> все объекты, имеющие класс фейдера, но не тот. Это не имеет смысла при назначении события click, потому что только после щелчка он знает, что такое 'this'. Просто назначьте событие click для '.fader', а затем в функции click используйте' $ (this) 'или' this'. Если вы хотите затухать только вещи внутри 'this', используйте' $ (this) .children() '; –