1. 程式人生 > >使用session做回退保留的操作

使用session做回退保留的操作

回退 click ole top 相同 getitem item 取出 key

$("body").click(function () { // 點擊頁面時,把頁面信息,scrollTop存入session中 var key_html = document.documentElement.outerHTML; var key_html2 = window.location.href; var key_scrollTop = document.body.scrollTop; sessionStorage.setItem(‘key_html‘, key_html); sessionStorage.setItem(‘key_html2‘, key_html2); sessionStorage.setItem(‘key_scrollTop‘, key_scrollTop); // alert(key_html) // alert(document.body.scrollTop) console.log(key_html) console.log(document.body.scrollTop) }); function onReady() { //取出存入的session,渲染到頁面中 var key_html3 = window.location.href; bodyhtml = sessionStorage.getItem(‘key_html‘); bodyhtml2 = sessionStorage.getItem(‘key_html2‘); bodyScrollTop = sessionStorage.getItem(‘key_scrollTop‘); // alert(‘bodyhtml:‘+bodyhtml); // alert(‘bodyScrollTop:‘+bodyScrollTop) console.log(document.documentElement.outerHTML) console.log(bodyScrollTop) if(bodyhtml2==key_html3){ if (bodyhtml != null) { setTimeout(function () { $("body").html(bodyhtml) }, 200); // setTimeout(function () { $("body").html(bodyhtml) }, 200); sessionStorage.removeItem(‘key_html‘); } if (bodyScrollTop != null) { setTimeout(function () { $("body").scrollTop(bodyScrollTop) }, 500); sessionStorage.removeItem(‘key_scrollTop‘); } } } onReady(); 註意:上面代碼中我在session中存了當前的頁面的地址,最後做了一個判斷 bodyhtml2==key_html3 ,有時候點擊下一個頁面的a鏈接時,也會跳到回退渲染的頁面中,所以加了這個判斷(判斷存入的地址和當前地址是否相同)

使用session做回退保留的操作