【问题标题】:Switching div places using css transition or javascript使用 css 转换或 javascript 切换 div 位置
【发布时间】:2014-11-23 07:04:54
【问题描述】:

假设我想制作一个桌面小工具并在其中放置一些快捷方式。我想知道 css 转换是否适用于 Windows 侧边栏小工具和/或我应该使用一些 webkit 前缀。 我知道这个动画对于像我这样的初学者来说可能有点过于雄心勃勃,但是当我点击中间的大框时,我希望那些框能顺时针顺时针切换位置,就像这张图片 http://oi61.tinypic.com/amp211.jpg

如果使用 css 转换无法做到这一点,请您指出一些 javascript/jquery 的方法来做到这一点。

<div class="menu_cont">
  <div class="menu_def" id="menu_up3"></div>
  <div class="menu_def" id="menu_up2"></div>
  <div class="menu_def" id="menu_up1"></div>
  <div class="menu_def" id="menu_down3"></div>
  <div class="menu_def" id="menu_down2"></div>
  <div class="menu_def" id="menu_down1"></div>
  <div class="menu_def" id="menu_center"></div>
</div>

css

.menu_cont
{width:104px; height:312px; margin:10px 10px 0 0; position:relative;}

.menu_def
{position:absolute;
border:2px solid #000; border-radius:5px; box-shadow:5px 0 5px #000;}

#menu_up3
{width:40px; height:40px; top:0; right:0; background-color:#0C0;}

#menu_up2
{width:50px; height:50px; top:30px; right:10px; background-color:#066;}

#menu_up1
{width:60px; height:60px; top:70px; right:20px; background-color:#036;}

#menu_down3
{width:40px; height:40px; bottom:0; right:0; background-color:#9C3;}

#menu_down2
{width:50px; height:50px; bottom:30px; right:10px; background-color:#0FF;}

#menu_down1
{width:60px; height:60px; bottom:70px; right:20px; background-color:#09F;}

#menu_center
{width:70px; height:70px; top:119px; left:0; background-color:#03F;}

【问题讨论】:

    标签: javascript jquery webkit css-transitions windows-desktop-gadgets


    【解决方案1】:

    我想你想要的是这样的:

    http://jsfiddle.net/6ta0ye3y/3/ jQuery 示例:

     $("#menu_center").click(function() {
        $(this).delay(400).animate({
            top: "+=60px", 
            left: "+=20px", 
            height: "-=10px", 
            width: "-=10px"
        }); 
    
        $("#menu_down1").delay(300).animate(
            {top: "+=50px",
             left: "+=20px", 
             height: "-=10px", 
             width: "-=10px"
            });
    
        $("#menu_down2").delay(200).animate({
            top: "+=40px",
            left: "+=20px",
            height: "-=12px", 
            width: "-=12px"
        });
    
        $("#menu_down3").delay(100).animate({
            top: "-=200px", 
            left: "+=20px"
        });
    });
    

    【讨论】:

    • 经过一些小的调整,这将完成这项工作。谢谢
    猜你喜欢
    • 2011-07-20
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多