使用file:// protocol时,我可以让history.back()函数在Chrome中运行吗?

Hor*_*aan 15 javascript google-chrome local-files

我正在一个环境中构建一个应用程序,我只能使用本地文件系统和浏览器(即运行服务器不是一个选项).我在许多页面上都有一个通用的"返回"链接,主要是调用history.back().它看起来像下面这样:

function goBack(evt) {
    // Check to see if override is needed here

    // If no override needed, call history.back()
    history.back();
}

$('#my-back-button').click(goBack);
Run Code Online (Sandbox Code Playgroud)

此代码在Firefox和IE6中运行良好(不要问),但在Chrome中失败.有关为何和/或可能的解决方法的任何建议?

我也试过history.go(-1);哪个也行不通.

Chi*_*ata 23

出于某些原因,在chrome中,你必须在调用history.go(-1)后添加return false

将您的功能更改为:

function goBack(evt) {
// Check to see if override is needed here

// If no override needed, call history.back()
history.go(-1);
return false;
}
Run Code Online (Sandbox Code Playgroud)