嗨,我正在尝试创建一个单页网站,其中包含多个与窗口大小相同的 div。该网站将有一个菜单来引用页面上的每个 div。我想要做的是在用户为窗口设置动画时单击指向其对应 div 的菜单链接之一。
http://www.nistoralexandru.comule.com/div.jpg
当用户单击链接时,我需要将窗口设置为类似于该站点的 div 动画:
我怎样才能做到这一点?
嗨,我正在尝试创建一个单页网站,其中包含多个与窗口大小相同的 div。该网站将有一个菜单来引用页面上的每个 div。我想要做的是在用户为窗口设置动画时单击指向其对应 div 的菜单链接之一。
http://www.nistoralexandru.comule.com/div.jpg
当用户单击链接时,我需要将窗口设置为类似于该站点的 div 动画:
我怎样才能做到这一点?
你可能是指手风琴之类的东西? http://jqueryui.com/demos/accordion/
jquery 有许多易于使用的手风琴插件,因此它们可能比从头开始编码更容易用于复杂的动画。
根据您添加的信息,也许像这样的网格手风琴? http://css-tricks.com/examples/InfoGrid/
您要链接到的站点是用 Flash 构建的,使用 javascript 复制不同页面元素的动画应该不难,但确实没有快速的“一刀切”功能来做到这一点。
这是一个通常如何完成的快速示例:
构建某种 HTML 结构:
<div id="site">
<div id="main" class="page">
<ul>
<li><a href="#page1">Page 1</a></li>
<li><a href="#page2">Page 2</a></li>
<li><a href="#page3">Page 3</a></li>
<li><a href="#page4">Page 4</a></li>
<li><a href="#page5">Page 5</a></li>
</ul>
</div>
<div id="page1" class="page"><a href="#main">Back</a></div>
<div id="page2" class="page"><a href="#main">Back</a></div>
<div id="page3" class="page"><a href="#main">Back</a></div>
<div id="page4" class="page"><a href="#main">Back</a></div>
<div id="page5" class="page"><a href="#main">Back</a></div>
</div>
并使用一点 javascript 在视口周围对其进行动画处理:
$('.page a').on('click', function(e) {
e.preventDefault();
var href = $(this).attr('href'),
top = $(href).css('top'),
left = $(href).css('left');
$("#site").animate({top: '-'+top, left: '-'+left}, 1000);
});
这是一个小提琴