Javascript SPA路由hashchange和后台重新加载

时间:2014-06-23 16:53:14

标签: javascript html mvvm

所以我有我的水疗中心并在哈希变换上我将一个新的.html文件加载到我的

问题是,当我按下后退按钮时,我不想通过.html文件重新加载,因为我想保留我在viewmodel中单击或更改的设置或项目(我正在做MVVM) 下面,如果我点击clickAbout功能,它将转到about页面,但是当我返回主列表时,我的所有设置都会丢失,因为它已重新加载。我应该做的最好的方法是什么?我想我可以使用cookies,或者我只是在主页上加载viewmodel。

        function clickAbout() {
            location.hash = "#about";
        }

            $(window).bind('hashchange', function (e) {
            var locationHashStr = window.location.hash.substr(1).split('&')[0];
            $("#divContent").load("/Content/" + locationHashStr + ".html");
        });
        $(document).ready(function () {
            if (window.location.hash) {
                var locationHashStr = window.location.hash.substr(1).split('&')[0]

                $("#divContent").load("/Content/" + locationHashStr + ".html");
            }
            else {

                location.hash = "#assetlist";

            }
        });

1 个答案:

答案 0 :(得分:0)