单击链接时,整个包装器会滑开,后续页面会滑动到位。我希望在从另一个页面单击主页时发生这种情况,但我想要一个不同的动画,具体取决于用户来自我站点的位置。当用户从外部来源访问我的页面时,我不想要动画。这可能吗?
答案 0 :(得分:0)
这是可能的。
您可以使用javascript / ajax浏览您的网站。
例如,您可以在包装器中包含两个或更多(如果需要)内容容器。当用户单击链接时,您可以将内容加载到视图之外的容器中,也可以只将容器包含在内容中(取决于您网站的需要),然后根据需要为其添加动画。
要知道您的用户来自哪里,请通过历史记录api更改网址(查看history.js),因为通常可以为网站的不同内容添加唯一网址,或者只保存当前位置。一个变量。然后,您可以在新内容中设置动画之前解析网址或检查位置变量的值。您当然应该推送新网址或将新位置保存到位置变量之后。
当用户来自外部源时,只需正常加载页面而无需javascript动画。
非常简单的例子:
$("#home-btn").on('click', function(){
//check where user's coming from,
//animate and show home content,
//push, save current location
});
或
$(".all-btns").on('click', function(){
var $this = $(this);
//check where user's coming from,
if($this.attr('id') == 'home-btn'){
//animate and show home content
} else {
//animate and show other content
}
//push, save current location
});
我相信你可以把剩下的事情搞清楚了。