jquery - 将另一个 div 与动画分开

标签 jquery html css

我正在寻找一种方法来防止 navitems 2 和 3 在 navitem 1 在鼠标进入和离开时播放其动画时移动,有人知道该怎么做吗?甚至可以按照我尝试的方式来做这件事吗?

https://jsfiddle.net/xLbLrmcq/

这是我的html

<html>
<head>
  <title>Art Profile</title>
  <script src="jquery-3.1.1.js"></script>
  <script type="text/javascript" src="jquery.js"></script>
  <link rel="stylesheet" href="main.min.css" type="text/css" media="screen">
</head>
<body>
  <div class="navbar">
    <div class="navitem" id="navitem1">
      <div id="navtext1">
        Work
      </div>
    </div>
    <div class="navitem" id="navitem2">
      Home
    </div>
    <div class="navitem" id="navitem3">
      Contact
    </div>
  </div>
</body>
</html>

我的 JQuery

$(document).ready(function(){
  $('#navitem1').mouseenter(function(){
    $('#navitem1').animate({
      height: '+=25px',
      width: '+=20px',
    }).css({
      'border-top': '7px solid #008cb1'});
    $('#navtext1').css({
      'line-height': '3.5em',
      '-ms-transition':'.3s',
      '-moz-transition':'.3s',
      '-webkit-transition':'.3s'
    });
  }).mouseleave(function(){
    $('#navitem1').animate({
      height: '-=25px',
      width: '-=20px',
    }).css({
      'border-top': '4px solid #008cb1'});
    $('#navtext1').css({
      'line-height': '2.5em',
      '-ms-transition':'.3s',
      '-moz-transition':'.3s',
      '-webkit-transition':'.3s'
    });
  });
});

CSS

body {
  font-family: helvetica;
  background: #101010;
  margin: 0;
  padding: 0;
}

.navbar {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.navitem {
  display: inline-block;
  min-height: 50px;
  min-width: 110px;
  background-color: #383838;
  color: #008cb1;
  font-size: 18px;
  border-top: 4px solid #008cb1;
  line-height: 2.5em;

}

最佳答案

您必须要么删除宽度动画,要么找到一种方法来保持菜单元素居中和对齐而不使用内联 block 。查看下面的 fiddle 示例。

请注意,您还应该删除排队的动画:

$('#navitem1').stop()

检查更新的 fiddle :

JSFIDDLE

关于jquery - 将另一个 div 与动画分开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41072704/

相关文章:

javascript - 附加节点不会触发 JavaScript 事件

iphone - 在 UIWebView 中注释文本

javascript - 为什么我不能在 masonry 容器中添加toggleClass?

jQuery 将 url 变量传递给 load 函数

javascript阅读更多功能?

jquery 淡入淡出添加内联样式到 span

html - 居中对齐图像

jquery - 没有 .hide() 函数的淡入?

javascript - jQuery:使用 substr() 执行此操作的替代方法

jquery - scrollTop 在 Firefox 和 IE 上不起作用?