我有一个JQuery函数,我想重新加载我的网页,然后将其滚动到特定的div。
我做了这个
$(document).ready(function() {
$('#mybutton').click(function(e) {
location.reload();
$('html, body').animate({
scrollTop: $("#myID").offset().top
}, 1000);
})
})
当我运行我的脚本时,我的页面重新加载得非常好,但滚动脚本不会像我想的那样运行。
请帮忙
答案 0 :(得分:2)
我想我们可以使用cookie让它按照我们的意愿工作..我添加一个小样本代码..请检查出来..如果你需要更多的帮助,请评论..如果这解决了你的问题然后投票这个答案将非常感谢.. 感谢
$(document).ready(function() {
$('#mybutton').click(function(e) {
//$.cookie("reload", 1); // you can use this type of cookie if u have a jquery cookie plugin how ever i have added both type ..
document.cookie=1; // I know this is the absurd way to use cookies. just thought of solving your problem. if you need precise result then either use a jquery cookie plugin or use setCookie function.
reload=true;
location.reload();
})
console.log(document.cookie);
if(document.cookie==1) //if($.cookie("reload")==1)
{
document.cookie="0";
console.log(document.cookie);
$('html, body').animate({
scrollTop: $("#myID").offset().top
}, 1000);
//$.cookie("reload", 0);
}
})
答案 1 :(得分:1)
$(document).ready(function() {
$('#mybutton').click(function(e) {
location.reload();
});
$('html, body').animate({
scrollTop: $("#myID").offset().top
}, 1000);
});
如果您不想重新加载页面,那么点击它将正常工作,因为这需要代码中的一些修改
$(document).ready(function() {
$('#mybutton').click(function(e) {
$('html, body').animate({
scrollTop: $("#myID").offset().top
}, 1000);
});
});
答案 2 :(得分:0)
尝试我的解决方案 你的div内添加这种类型的链接
<a name="exactline">Linking Directly to a Specific Location</a>
当你调用window reload时这样做
window.location.replace("http://yuorsite/yourCurentPage.html#exactline");