使用JavaScript跳转到新的HTML页面

Jér*_*ôme 5 javascript redirect

在我的HTML页面中,我需要检查是否安装了Adobe Flash Player.如果没有,我想自动跳转到另一个HTML页面,告诉用户需要Flash播放器.

我正在使用JavaScript来检查Flash播放器是否可用,使用" JavaScript Flash检测库 ".

我的HTML页面的主体如下所示:

<body>
    <script type="text/javascript"> 
    if(!FlashDetect.installed)
    {
        alert("Flash 9.0.115 is required to enjoy this site.");
    }
    </script>
    ...
    ...
Run Code Online (Sandbox Code Playgroud)

检测工作正常:我可以看到警报,但我没有找到跳转到另一个HTML页面的方法.

任何提示?

编辑:我没有提到的东西似乎有所不同:HTML页面是本地页面(从CD-ROM运行),我想跳转到位于当前目录中的HTML页面.

Geo*_*lly 25

window.location.href = "http://stackoverflow.com";
Run Code Online (Sandbox Code Playgroud)

对于本地文件,如果您知道相对路径,这应该有效:(在您的情况下,这适用.)

window.location.href = "someOtherFile.html";
Run Code Online (Sandbox Code Playgroud)

也许你也可以使用这个绝对做到:(未经测试.)

window.location.pathname = "/path/to/another/file.html/";
Run Code Online (Sandbox Code Playgroud)

问题是浏览器供应商的安全措施.谷歌有一些很好的信息.


bob*_*nce 5

非常警惕即时 JavaScript 重定向。Flash 检测脚本可能是错误的 (*),因此最好允许用户通过某种手动覆盖或仅使用后备内容来决定是否使用 Flash。

写入 location.href 工作但可以“打破后退按钮” - 如果用户按下后退并且您的页面insta-redirect他们再次转发页面,他们不太可能感到高兴。location.replace('...') 避免了这个问题。

(* - 有两种检测 Flash 的方法,它们都不可靠。创建 Flash 实例并嗅探它会因 FlashBlock 等软件或加载缓慢而中断,并且直接嗅探插件不是标准化的,并且可能会在更模糊的平台上中断. http://www.adobe.com/devnet/flashplayer/articles/future_detection_print.html 上的Adobe 自己的代码最终诉诸于嗅探 UA 字符串,呃。)