2

我正在尝试使用 jQuery 在每个循环中设置一个间隔。我认为以下可能有效,但没有这样的运气:

menuSlide = $(this).animate({
  left: '250px'
}, 50, function() {
});

var slideIn = function() {

  $('._jsNav').each(function(){
    setTimeout(function(menuSlide) {
    }, 200);
 });
}

$('._jsStage').mouseenter(slideIn);

任何人都可以让我知道它有什么问题吗?或者如果我不正确地接近它?

谢谢!

4

2 回答 2

0

查看此链接JavaScript Timing Events和此示例:

setTimeout(function(){alert("Hello")},3000); // anonymous function

并回答问题(您的代码):

setTimeout(function(menuSlide) { }, 200); // anonymous function with parameter
// menuSlide is undefined here

这段代码必须如何工作?

添加:

据我了解,您试图创建类似http://jsfiddle.net/hcFGv/的东西?

于 2012-10-07T14:34:26.027 回答
0

你需要那个小插件 jquery-timing的帮助。它用非常短的代码做你想做的事:

$('._jsStage').mouseenter(function(){
    $('._jsNav').each($).wait(200).animate({left:250},50,$);
});

就这样!


如果你想在单个 jQuery 行中做同样的事情,该插件允许编写更短的代码:

$('._jsStage').on('mouseenter').$('._jsNav').each($).wait(200).animate({left:250},50,$);
于 2012-10-07T16:02:58.057 回答