【问题标题】:HTML/Javascript simple redirect -works in IE/Opera but not in Chrome/FirefoxHTML/Javascript 简单重定向 - 适用于 IE/Opera 但不适用于 Chrome/Firefox
【发布时间】:2015-01-29 17:29:10
【问题描述】:

我有一个 HTML 页面,它只是创建一个指向每日 MP3 的 URL 有人可以帮我吗,我让它在 IE 和 Opera 中工作,但不能在 Chrome 和 FireFox 中工作 该页面在 Chrome/Firefox 中什么都不做,而在 IE/Opera 中下载文件

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <script>
    function yyyymmdd(dateIn) {
        var yyyy = dateIn.getFullYear();
        var mm = dateIn.getMonth() + 1; // getMonth() is zero-based
        var dd = dateIn.getDate();
        return String(10000 * yyyy + 100 * mm + dd);
     }

        var today = new Date();
        var p = 'http://www.test.com/' + yyyymmdd(today) + '.mp3';
        window.navigate(p);
    </script>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>

</body>
</html>

【问题讨论】:

  • 试试document.location.href=p;
  • 在 FireFox 中使用 FireBug 查看它重定向到的位置;看看它是否在重定向时返回 404 或 500... 并使用 window.location 而不是导航。

标签: javascript google-chrome redirect navigateurl


【解决方案1】:

你可以使用 window.location.replace(p);而不是:window.navigate(p);

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<script>

function yyyymmdd(dateIn) {
    var yyyy = dateIn.getFullYear();
    var mm = dateIn.getMonth() + 1; // getMonth() is zero-based
    var dd = dateIn.getDate();
    return String(10000 * yyyy + 100 * mm + dd);
 }

    var today = new Date();
    var p = 'http://www.test.com/' + yyyymmdd(today) + '.mp3';
   // window.navigate(p);
   window.location.replace(p);


</script>
<meta charset="utf-8" />
<title></title>
</head>
<body>

</body>
</html>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-13
    相关资源
    最近更新 更多