繁体   English   中英

jQuery动画无限不起作用

[英]jQuery animation infinite doesn't work

我有这个代码

var goRight = function() {
  $(this).animate({'left:' '40px'}, 1000, goLeft);
};

var goLeft = function() {
  $(this).animate({'left:' '-40px'}, 1000, goRight);
};

var main = function() {
  $('.square').hover(function() {
    $(this).toggleClass('active');
  });
$('.square').goRight();
};

$(document).ready(main);

它应该将正方形(一个div)向右移动,然后无限地向左移动,并在用户将鼠标悬停在其上时使其变为蓝色。 但这是行不通的。 问题可能出在goRightgoLeft函数中。 因为如果我将它们完全删除,则悬停会更改颜色。 而当这些功能都没有用时。

您需要像这样进行链接

 $.fn.goRight = function() { this.animate({ 'left': '40px' }, 1000, function() { $(this).goLeft() }); return this; }; $.fn.goLeft = function() { this.animate({ 'left': '-40px' }, 1000, function() { $(this).goRight() }); return this; }; var main = function() { $('.square').hover(function() { $(this).toggleClass('active'); }); $('.square').goRight(); }; $(document).ready(main); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div style="width:100px;height:100px;background:black;position:relative;" class="square"></div> 

有关jQuery插件开发的更多信息: https : //learn.jquery.com/plugins/basic-plugin-creation/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM