所以我在主页上有一个菜单,它对联系表单有滚动效果。
<li><a href="{{ 'home'|page }}" class="scroll">Contact</a></li>
它就像主页上的魅力一样,但如果用户位于不同的页面上,请说出或博客并点击“联系人”链接,她/他会在主页上获得重定向但滚动效果永远不会发生。
当用户在不同的网页上并点击该链接时,是否可以实现这一目标?
滚动代码为:
$(function(){$(".scroll").click(function(){$("html,body").animate({scrollTop:$("#contact").offset().top},"500");return false})})
yezzz建议后的控制台日志:
答案 0 :(得分:0)
如果其他网页将您发送到主页上的#contact,则可以触发点击:
$(function(){
$(".scroll").click(function(){
$("html,body").animate({scrollTop:$("#contact").offset().top},"500");
return false;
});
if (window.location.hash == "#contact") $(".scroll").trigger("click");
});
答案 1 :(得分:0)
我很想到我会使用localstorage来试一试。用以下内容替换默认脚本(在所有页面上),并检查控制台是否有错误。
$(function(){
$(".scroll").click(function(){
$("html,body").animate({scrollTop:$("#contact").offset().top},"500");
return false;
});
if (typeof(Storage) !== "undefined") {
// localstorage is supported
if (location.pathname === "/") {
// we're on homepage
if (localStorage.triggerScroll == 1) {
localStorage.triggerScroll = 0;
$(".scroll").trigger("click");
}
} else {
// we 're on another page
$(".scroll").click(function(){
localStorage.triggerScroll = 1;
});
}
});