jQuery循环函数连续 - 翻转功能

时间:2012-03-23 19:27:14

标签: jquery jquery-plugins

这是函数:http://jsfiddle.net/bfQMD/25/

如何在悬停时连续翻转并在悬停时停止?

1 个答案:

答案 0 :(得分:1)

你可以这样做:

$(document).ready(function () {

    $("a").hover(
        function () {
            var self = $(this);
            self.data("hover", true);

            function flip() {
                $(".flipbox").flip({
                    direction:'tb',
                    color: '#fff',
                    onEnd: function(){
                        if (self.data("hover")) {
                            setTimeout(flip,500);
                        }
                    }
                })
            }

            flip();        
        }, 
        function () {
            $(this).data("hover", false);
        }
    );

});

此处的演示演示:http://jsfiddle.net/jfriend00/2BALx/

在两个悬停功能中,您可以跟踪鼠标当前是否正在悬停,然后在每个翻转的onEnd功能中,如果鼠标仍然悬停,则在之后开始新的flip()短暂的延迟。由于翻转插件的工作方式,你必须使用一个短暂的延迟(如果你想要它可以超短),因为如果你试图直接从onEnd开始下一个剪辑,它将无法启动 - 因此它需要至少在一个非常短的计时器上。