1

我目前正在开发这个非常简单的基于文本的游戏,要再次玩,你必须刷新页面。这似乎在 Opera 和 Chrome 中有效,但它不会在 Firefox 中重置页面。这是我正在使用的功能。

$(function() {
    $('#play_again').click(function() {
        var answer = confirm ("Reset the game?")
        if (answer) {
        window.location.reload(); 
        }
    });
});

我认为 Firefox 正在缓存页面或其他东西。我怎样才能使这项工作?

4

4 回答 4

4

window.location.href我建议不要使用window.location.replace. 为什么?因为href会在浏览器历史记录中添加一个新条目。这可能不是您所期望的行为。

window.location.replace( window.location.href )
于 2012-04-26T18:06:10.307 回答
3

这是很难做到的事情,但是您可以通过添加随机查询字符串来欺骗 IE 和 firefox 的缓存,使其认为这是一个新页面。你能试试像

window.location.href = window.location.href + '?refresh';
于 2012-04-26T17:45:53.753 回答
1

尝试

$(function () {
    $('#play_again').click(function () {
        var answer = confirm("Reset the game?")
        if (answer) {
            $("form").each(function () {
                this.reset();
            });
            window.location.reload();
        }
    });
});
于 2012-04-26T17:45:06.013 回答
1

这有效:

document.location=document.location;
于 2016-01-08T04:26:52.653 回答