解决微信返回时ajax重新载入的问题

稍微有点复杂,先说原理。

给当页设置一个可识别的值,比如list页面,给个页面值“list”

如下:

var spage     = "list";

然后在页面中写入JavaScript session


function fallback(){
//把内容写入ssion
sessionStorage.setItem('c_rout',true);
sessionStorage.setItem('c_list',$('.listbox').html());
sessionStorage.setItem('c_size',Size);
sessionStorage.setItem('c_page',Page);
sessionStorage.setItem('c_scrolltop',getScrollTop());
sessionStorage.setItem('spage',spage);
}


以上内容在跳转的时候可以写在onclick事件中。


那么在页面中进行判断

//如果页面值不等于本页的页面值,则清空,如果存在就载入,这样即使跨域到了其他页面,点返回这个页面还存在。当然,如果有多个类似的页面,只保留最后一个,很多情况下已经足以。


if(sessionStorage.getItem('spage')!=spage){
sessionStorage.clear();
}

if(sessionStorage.getItem('c_rout')){

$('.listbox').html(sessionStorage.getItem('c_list'));
window.loading = true;
window.Page = sessionStorage.getItem('c_page');
window.Size = sessionStorage.getItem('c_size');
$(window).scrollTop(sessionStorage.getItem('c_scrolltop'));

sessionStorage.clear();
}



你可能感兴趣的:(解决微信返回时ajax重新载入的问题)