都是风景,幸会。

今天在工作中遇到需要js动态的改变embed的src值进行切换的效果;

<div class="m-video">
    <div class="v-play">
        <embed allowfullscreen="true" allowscriptaccess="always" height="450" name="cc_4B7838C6838BB3B99C33DC5901307461" pluginspage="http://www.macromedia.com/go/getflashplayer" src="http://p.bokecc.com/flash/player.swf?vid=4B7838C6838BB3B99C33DC5901307461&amp;siteid=4F21A251DAE61656&amp;autoStart=false&amp;playerid=08C25F053497D927&amp;playertype=2" type="application/x-shockwave-flash" width="660" wmode="transparent"></embed>
    </div>
    <ul class="v-tit">
        <li data-src="http://p.bokecc.com/flash/player.swf?vid=4B7838C6838BB3B99C33DC5901307461&amp;siteid=4F21A251DAE61656&amp;autoStart=true&amp;playerid=08C25F053497D927&amp;playertype=2"><img src="http://u1.huatu.com/image/2014image/201510/zgzx/ztfx1.jpg" alt=""></li>
        <li data-src="http://p.bokecc.com/flash/player.swf?vid=1A42E7BBB7A33C6A9C33DC5901307461&amp;siteid=4F21A251DAE61656&amp;autoStart=true&amp;playerid=08C25F053497D927&amp;playertype=2"><img src="http://u1.huatu.com/image/2014image/201510/zgzx/haiguan1.jpg" alt=""></li>
        <li data-src="http://p.bokecc.com/flash/player.swf?vid=7A911A9BDBD30B2D9C33DC5901307461&amp;siteid=4F21A251DAE61656&amp;autoStart=true&amp;playerid=08C25F053497D927&amp;playertype=2"><img src="http://u1.huatu.com/image/2014image/201510/zgzx/haishiju1.jpg" alt=""></li>
    </ul>
</div>
••••••

Hexo 是基于 Node.js 高效率静态博客程序。

可以方便的生成静态网页托管在github和Heroku上。

本次安装环境:

服务器:阿里云ECS
内存:1G
带宽:1M
硬盘:20G
操作系统:Ubuntu 14.04 64bit LTS

••••••

前言
想起d2当天通过随机选的三张牌,图为开发相关的logo,只要猜对两个就可以拿奖品。
第二,感受到的变化,去年谈angular,node.js,今年react native,node.js主题为主,感受变化只大。
那再过十天,2015年就过去了,那在2016年我们可以玩些什么呢?

••••••

刚才在做日期格式化时需要将汉字进行编码再解码输出,所以就查了一下,只有字母和数字 [0-9a-zA-Z]、一些特殊符号 $-_.+!*'(),,以及某些保留字,才可以不经过编码直接用于 URL;一共有2对编/解码函数:

// 前后一一对应关系:编码和解码
encodeURI 和 decodeURI();
encodeURIComponent() 和 decodeURIComponent();
••••••

/**
 * 对Date的扩展,将 Date 转化为指定格式的String
 * 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q)可以用 1-2 个占位符
 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
 * eg:
 * (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S")==> 2006-07-02 08:09:04.423
 * (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04
 * (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04
 * (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04
 * (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
 */

Date.prototype.format = function(format) {
    var date = {
            "M+": this.getMonth() + 1, //月份
            "d+": this.getDate(), //日
            "h+": this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //小时
            "H+": this.getHours(), //小时
            "m+": this.getMinutes(), //分
            "s+": this.getSeconds(), //秒
            "q+": Math.floor((this.getMonth() + 3) / 3), //季度
            "S": this.getMilliseconds() //毫秒
        },
        week = {
            "0": "日",
            "1": "一",
            "2": "二",
            "3": "三",
            "4": "四",
            "5": "五",
            "6": "六"
        };

    // 年(y)的占位符
    if(/(y+)/.test(format)){
        format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    }
    // 周(E)的占位符
    if(/(E+)/.test(format)){
        format = format.replace(RegExp.$1, ((RegExp.$1.length > 1) ? (RegExp.$1.length>2 ? "星期" : "周") : "") + week[this.getDay() + ""]);
    }
    // 其他各元素占位符
    for(var k in date){
        if(new RegExp("(" + k + ")").test(format)){
            format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
        }
    }

    return format;
}

var newDate = new Date(),
    time = Date.parse(new Date("2015/12/12 00:00:00"));
newDate.setTime(time);
console.log(newDate.format("yyyy-MM-dd EE HH:mm:ss"));

因为公司的业务是做教育的,所以页面上有关于考试时间的倒计时特效,这些考试时间都是定死的,每月都有几场,每次需要人工手动去修改,太麻烦,所以需求来了:


小二儿,上代码~

••••••