javascript - 检测 Chrome 是否恢复了昨天的页面

标签 javascript google-chrome

我有一个带有日期输入字段的表单。如果加载页面,输入将填充当前日期。但是,如果 Chrome 启动并恢复了昨天最后打开的标签页,那么表格中总是有昨天的日期。 如果我重新加载页面,它会显示正确的日期。但我希望 Chrome 立即显示当前日期。

有什么解决办法吗?

更新:页面设置为cache-control:no-cache, private

最佳答案

我在页面上放置了一个日期字段和一个 JavaScript。原来页面是从缓存中加载的。表单中仍有昨天的日期,JavaScript 的执行方式与页面加载时相同。如果我比较日期,我可以检测到旧页面:

<input id="form_date" name="form_date" type="hidden" value="2017-12-19 17:52:08">
<script>
    // Day compare
    Date.prototype.sameDay = function(d) {
        return this.getFullYear() === d.getFullYear()
            && this.getDate() === d.getDate()
            && this.getMonth() === d.getMonth();
    };
    var x_today = new Date();
    var x_page_date = new Date($('#form_date').val());
    if (console && !x_today.sameDay( x_page_date )){
        console.log("Old page!");
        console.log('page date: ', x_page_date);
        console.log('today: ', x_today);
    }
</script>

从这里您可以重新加载页面或询问用户要做什么。

关于javascript - 检测 Chrome 是否恢复了昨天的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47749878/

相关文章:

javascript - 如何在石头剪刀布模拟中从onclick事件返回值?

javascript - BabylonJS 从外部文件执行脚本

javascript - 将复选框的值导出到 jQuery 数据表中的 excel

javascript - Chrome 扩展内容脚本可以访问 window.opener 吗?

javascript - 将数据从 Flask 传递到 javascript 作为 json 无法从单独的 .js 文件中工作

javascript - 在标签标签内使用时单选按钮发生故障

javascript - Chrome : JS loads before HTML

javascript - 使用 JavaScript 将光标置于 Chrome 文本输入元素中

Python Selenium WebDriverException : chrome not reachable while opening ChromeDriver

javascript - 文本选择和气泡覆盖作为 Chrome 扩展