<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    藝不壓身

    真的

    2007年2月2日

    IE和FireFox的盒模型實現不一致

    IE和FireFox的盒模型實現不一致,郁悶中
    IE的div的padding不包含邊界,FireFox不包含上邊界和左邊界卻包含右邊界和下邊界

    posted @ 2007-02-02 14:35 雪松 閱讀(489) | 評論 (1)編輯 收藏

    JavaScript的DateFormat類

    /**
    ?* JavaScript的DateFormat類
    ?* [File? ] date.js
    ?* [Author] cerdar
    ?* [Date? ] 2006-06-20
    ?* copy right cerdar
    /**----------------------------------------------------------------*/
    function DateFormat(pattern, formatSymbols)
    {
    ?? ?if(pattern == null || pattern == undefined)
    ?? ?{
    ?? ??? ?pattern = "yyyy-MM-dd HH:mm:ss SSS";
    ?? ?}

    ?? ?if(formatSymbols == null || formatSymbols == undefined)
    ?? ?{
    ?? ??? ?formatSymbols = "yMdHmsS";
    ?? ?}

    ?? ?this.pattern = pattern;
    ?? ?this.formatSymbols = formatSymbols;
    }

    DateFormat.prototype.format = function(date)
    {
    ?? ?var time = getTime(date);
    ?? ?
    ?? ?// 標記存入數組
    ?? ?var cs = this.formatSymbols.split("");

    ?? ?// 格式存入數組
    ?? ?var fs = this.pattern.split("");

    ?? ?// 構造數組
    ?? ?var ds = time.split("");

    ?? ?// 標志年月日的結束下標
    ?? ?var y = 3;
    ?? ?var M = 6;
    ?? ?var d = 9;
    ?? ?var H = 12;
    ?? ?var m = 15;
    ?? ?var s = 18;
    ?? ?var S = 22;

    ?? ?// 逐位替換年月日時分秒和毫秒
    ?? ?for(var i = fs.length - 1; i > -1; i--)
    ?? ?{
    ?? ??? ?switch (fs[i])
    ?? ??? ?{
    ?? ??? ??? ?case cs[0]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[y--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[1]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[M--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[2]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[d--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[3]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[H--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[4]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[m--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[5]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[s--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[6]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?fs[i] = ds[S--];
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ?}
    ?? ?}

    ?? ?return fs.join("");
    }

    /**
    ?*@param datetime - String
    ?*
    ?*@return - Date
    ?*/
    DateFormat.prototype.parse = function(date)
    {
    ?? ?var y = "";
    ?? ?var M = "";
    ?? ?var d = "";
    ?? ?var H = "";
    ?? ?var m = "";
    ?? ?var s = "";
    ?? ?var S = "";

    ?? ?// 標記存入數組
    ?? ?var cs = this.formatSymbols.split("");

    ?? ?// 格式存入數組
    ?? ?var ds = this.pattern.split("");

    ?? ?// date?? = "2005-08-22 12:12:12 888";
    ?? ?// format = "yyyy-MM-dd HH:mm:ss SSS";
    ?? ?// sign?? = "yMdHmsS";
    ?? ?var size = Math.min(ds.length, date.length);

    ?? ?for(var i=0; i<size; i++)
    ?? ?{
    ?? ??? ?switch (ds[i])
    ?? ??? ?{
    ?? ??? ??? ?case cs[0]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?y += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[1]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?M += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[2]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?d += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[3]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?H += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[4]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?m += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[5]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?s += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ??? ?case cs[6]:
    ?? ??? ??? ?{
    ?? ??? ??? ??? ?S += date.charAt(i);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?}
    ?? ??? ?}
    ?? ?}
    ?? ?
    ?? ?if(y.length < 1) y = 0; else y = parseInt(y);
    ?? ?if(M.length < 1) M = 0; else M = parseInt(M);
    ?? ?if(d.length < 1) d = 0; else d = parseInt(d);
    ?? ?if(H.length < 1) H = 0; else H = parseInt(H);
    ?? ?if(m.length < 1) m = 0; else m = parseInt(m);
    ?? ?if(s.length < 1) s = 0; else s = parseInt(s);
    ?? ?if(S.length < 1) S = 0; else S = parseInt(S);

    ?? ?var d = new Date(y, M - 1, d, H, m, s, S);

    ?? ?return d;
    }

    // 返回當前時間
    function getTime(date)
    {
    ?? ?if(date == null)
    ?? ?{
    ?? ??? ?date = new Date();
    ?? ?}
    ?? ?
    ?? ?var y = date.getFullYear();
    ?? ?var M = date.getMonth() + 1;
    ?? ?var d = date.getDate();
    ?? ?var h = date.getHours();
    ?? ?var m = date.getMinutes();
    ?? ?var s = date.getSeconds();
    ?? ?var S = date.getTime()%1000;

    ?? ?var html = y + "-";

    ?? ?if(M < 10)
    ?? ?{
    ?? ??? ?html += "0";
    ?? ?}
    ?? ?html += M + "-";

    ?? ?if(d < 10)
    ?? ?{
    ?? ??? ?html += "0";
    ?? ?}
    ?? ?html += d + " ";

    ?? ?if(h < 10)
    ?? ?{
    ?? ??? ?html += "0";
    ?? ?}
    ?? ?html += h + ":";

    ?? ?if(m < 10)
    ?? ?{
    ?? ??? ?html += "0";
    ?? ?}
    ?? ?html += m + ":";

    ?? ?if(s < 10)
    ?? ?{
    ?? ??? ?html += "0";
    ?? ?}
    ?? ?html += s;
    ?? ?
    ?? ?html += " ";

    ?? ?if(S < 100)
    ?? ?{
    ?? ??? ?html += "0"
    ?? ?}

    ?? ?if(S < 10)
    ?? ?{
    ?? ??? ?html += "0";
    ?? ?}

    ?? ?html += S;

    ?? ?return html;
    }

    /////////////////////////////////////////////////////////////////////////////////////
    <!-- test.html -->
    <html>
    <head>
    <title>模板文件</title>
    <script language="javascript" src="date.js"></script>
    <script language="javascript">
    <!--
    function setValue(_id, _value)
    {
    ??? var obj = document.getElementById(_id);

    ??? if(obj != null)
    ??? {
    ??? ??? obj.value = _value;???
    ??? }
    }

    function test0()
    {
    ??? // 使用自定義符號
    ??? var df = new DateFormat(" HH:mm:ss SSS");

    ??? setValue("ID_TXT0", df.format(new Date()));
    }

    function test1()
    {
    ??? // 標準日期格式
    ??? var df1 = new DateFormat("yyyy-MM-dd HH:mm:ss SSS");
    ???
    ??? var df2 = new DateFormat("MM/dd/yy");
    ??? var df3 = new DateFormat("dd/MM/yy");
    ??? var df4 = new DateFormat("yyyy年MM月dd日 HH時mm分ss秒 SSS毫秒");

    ??? // 解析出Date對象
    ??? var dt = df1.parse("2004-02-23 13:24:48 789");
    ???
    ??? setValue("ID_TXT1", "[" + df1.format(dt) + "] [" + df2.format(dt) + "] [" + df3.format(dt) + "] [" + df4.format(dt) + "]");
    }

    function test2()
    {
    ??? // 使用自定義符號
    ??? var df = new DateFormat("AAAA-BB-CC DD:EE:FF GGG", "ABCDEFG");
    ??? var dt = df.parse("2004-02-23 13:24:48 789");

    ??? setValue("ID_TXT2", df.format(dt));
    }

    function test3()
    {
    ??? // 一般彈出日歷對話框, 得到日期, 此處假設為當前日期
    ??? var retval = new DateFormat("yyyy-MM-dd").format(new Date());

    ??? if(retval != null )
    ??? {
    ??? ??? var obj = document.getElementById("ID_TXT3");

    ??? ??? if(obj != null)
    ??? ??? {
    ??? ??? ??? // 時間日期格式化對象
    ??? ??? ??? var dtf = new DateFormat(obj.format);
    ??? ??? ???
    ??? ??? ??? // 給日期追加當前時間
    ??? ??? ??? retval += new DateFormat(" HH:mm:ss SSS").format(new Date());

    ??? ??? ??? // 按照給定的格式解析出時間日期字符串
    ??? ??? ??? obj.value = "[" + retval + "] : " + dtf.format(new DateFormat("yyyy-MM-dd HH:mm:ss SSS").parse(retval));
    ??? ??? }
    ??? }
    }

    function test4()
    {
    ??? var df = new DateFormat("yyyy-MM-dd HH:mm:ss SSS");
    ??? var dt = df.parse("2007-02-02 13:54:24 250");

    ??? setValue("ID_TXT4", new DateFormat("yyyy年MM月dd日 HH時mm分ss秒 SSS毫秒").format(dt));
    }

    function dispatch(src)
    {
    ??? if(src == null || src == undefined)
    ??? {
    ??? ??? return;
    ??? }

    ??? if(src.value == null || src.value == undefined)
    ??? {
    ??? ??? return;
    ??? }

    ??? var fun = window[src.value];

    ??? if(fun == null || fun == undefined)
    ??? {
    ??? ??? return;
    ??? }

    ??? if("function" != typeof(fun))
    ??? {
    ??? ??? return;
    ??? }

    ??? fun();
    }
    //-->
    </script>
    </head>
    <body>
    <input type="text" id="ID_TXT0" size="100"/><input type="button" value="test0" onclick="dispatch(this)"/><br/>
    <input type="text" id="ID_TXT1" size="100"/><input type="button" value="test1" onclick="dispatch(this)"/><br/>
    <input type="text" id="ID_TXT2" size="100"/><input type="button" value="test2" onclick="dispatch(this)"/><br/>
    <input type="text" id="ID_TXT3" size="100" format="yyyy年MM月dd日 HH時mm分ss秒 SSS毫秒"/><input type="button" value="test3" onclick="dispatch(this)"/>
    <input type="text" id="ID_TXT4" size="100"/><input type="button" value="test4" onclick="dispatch(this)"/><br/>
    </body>
    </html>

    posted @ 2007-02-02 14:20 雪松 閱讀(4363) | 評論 (0)編輯 收藏

    僅列出標題  
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆檔案

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲AV乱码一区二区三区林ゆな| 国产成人免费在线| 在线a亚洲v天堂网2018| 亚洲AV日韩AV一区二区三曲| 免费看大美女大黄大色| 亚洲精品中文字幕无码A片老| 成年性午夜免费视频网站不卡| 中文字幕精品三区无码亚洲 | 好久久免费视频高清| 亚洲成AV人片在线播放无码| 中文字幕无码毛片免费看| 亚洲欧洲∨国产一区二区三区| 最近免费中文字幕MV在线视频3| 久久精品国产亚洲av四虎| 青青青国产手机频在线免费观看| 久久丫精品国产亚洲av不卡| 黄+色+性+人免费| 日韩国产欧美亚洲v片| 国产亚洲欧洲Aⅴ综合一区| 国产精品免费AV片在线观看| 亚洲综合无码一区二区三区| 97人伦色伦成人免费视频| 国产精品日本亚洲777| 亚洲色成人WWW永久网站| 久久www免费人成看片| 精品久久久久亚洲| 久久精品国产精品亚洲艾草网| 国产免费的野战视频| 看亚洲a级一级毛片| 亚洲国产AV无码专区亚洲AV | 免费人成视频在线观看网站| 国产成人精品亚洲2020| 美女被爆羞羞网站免费| 91大神亚洲影视在线| 国产成人免费A在线视频| 性xxxx视频免费播放直播| 亚洲人成欧美中文字幕| 国产亚洲一区二区三区在线观看| 成人免费观看一区二区| 九一在线完整视频免费观看| 亚洲成a人片在线观看播放|