开发者

Javascript, delete the last item in history (firefox addon)

开发者 https://www.devze.com 2023-03-16 02:08 出处:网络
I have a Firefox addon that first displays a warning/info page telling the user they are being redirected (chrome://localfilter/content/wait_page.html) then redirects them to their destination.

I have a Firefox addon that first displays a warning/info page telling the user they are being redirected (chrome://localfilter/content/wait_page.html) then redirects them to their destination.

Everything is working great.

The only thing is when/if they press the back button they see that "wait page", is there anyway to delete just that wait page from the history and leave everything else as is? Or if that is not possible replace that wait page with another page that perhaps has just the logo (because if they read they are getting redirected and nothing happens...)

EDIT:

// function to see if the banned URL is on the list, then redirect
...
window.stop(); // Totally stop the page from loading.

                            window.content.location.href = "chrome://quickfilter/content/wait_page.html";



                            this.notificationBox();
                            self.timervar = setTimeout(function ()
                            {
                                self.main.redirectToAnotherUrl();
                            }, 2505);

...


redirectToAnotherUrl: function ()
            {


                window.content.location.href = self.mafiaafireFilterUrl;
                self.timervar = setTimeout(function ()
                            {
                         开发者_JAVA百科       self.main.notificationBox();
                            }, 2005);


            }

Changed with replace:

redirectToAnotherUrl: function ()
            {


                window.content.location.replace(self.mafiaafireFilterUrl);
                self.timervar = setTimeout(function ()
                            {
                                self.main.notificationBox();
                            }, 2005);


            }


I guess that the best solution is not to delete the page from history but rather not add it in the first place. When you are "redirecting" to the target page you are probably using window.location.href = ... or something like this. Instead you should use window.location.replace(...) which will "replace" the current page without creating an additional history entry.

0

精彩评论

暂无评论...
验证码 换一张
取 消