6

我真的不知道我在这里做错了什么。我无法让 Datejs 正确解析“12:00 pm”但是,它似乎在其他日期工作正常。下面是来自 Firefox 调试器的剪辑:

在此处输入图像描述

4

2 回答 2

16

从 SVN 下载最新版本的 Datejs,而不是“下载”部分中的版本。

于 2011-06-22T18:44:17.763 回答
0

尝试将代码包装在 IIFE 中。

<!DOCTYPE html>
<html>
    <body>
        <input type=text id=d onkeyup="parsedate()">
        </input>
        <br>
        <span id=output></span>
        <script type="text/javascript" src="../../../static/js/date.js"></script>
        <script>
            ( function() {
                    parsedate = function() {
                        var input = document.getElementById('d').value;
                        var output = document.getElementById('output');
                        var d = Date.parse(input);
                        if (d !== null) {
                            output.innerHTML = d.toString();
                        } else {
                            output.innerHTML = "------"
                        }
                    }
                }());
        </script>
    </body>
</html>

IIFE 是

(function(){
    //code
}());

我很好奇的是为什么 FireFox 会这样。我知道他们几年前添加了安全更新,阻止您覆盖 Date.prototype 函数,但为什么 IIFE 能够访问此范围?

于 2013-02-20T05:36:09.637 回答