为什么history.go(-1)在IE和webkit浏览器中做了不同的事情?

时间:2013-01-17 01:19:28

标签: javascript asp.net internet-explorer browser-history

我的asp.net应用程序中有这段代码

    linkBack.NavigateUrl = "#";
    linkBack.Attributes["onclick"] = "if (BrowserDetect.browser == 'Explorer') {history.go(-1);} else if (BrowserDetect.browser == 'Chrome') {history.go(-1);return false;}";

BrowserDetect是一个JS库,告诉我我正在使用什么浏览器。回到这一点,当我点击Chrome中的后退链接时,它在历史记录中只需要一个级别,完全符合预期。 IE向后退了一步,在下一次点击时,我带我回到原来的位置,随后的点击确保我在同一两页之间来回走动。有人可以向我解释发生了什么以及如何解决这个问题吗?

1 个答案:

答案 0 :(得分:3)

因为你正在为IE和Chrome做些不同的事情?无论如何,你都需要从onclick返回false。否则将遵循链接(#)

linkBack.Attributes["onclick"] = "history.go(-1);return false;";