使用jQuery的toggle()悬停图像在jsfiddle中不起作用

时间:2013-08-14 07:19:25

标签: javascript jquery jquery-animate toggle jsfiddle

以下是fiddle

创建此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
});

编辑:好的,我现在看到animate()没有运行的原因 - 我正在调用错误的元素(this而不是self jsfiddle更正了)。但我仍然不知道为什么toggle()在jsfiddle中不起作用。

1 个答案:

答案 0 :(得分:0)

您的jsFiddle错了。首先,您不使用任何jQuery库,因为您在第一行中引用的文件不存在。其次是您尝试将click事件应用于具有类.fader的对象,而不是被单击的对象。那个班没有其他对象。请改用parents()。并且功能(如你所说)“内部”fadeOut在fadeOut结束时触发,因此你的代码有点无意义。

如果您想同时进行动画和淡出,请仅使用动画:

$('.fader').animate({ opacity: 0, top: "-1000px", left: "-1000px" }, 'slow');