星期六 多云,傍晚转阴 19~26℃

北软健身(11)

昨天把健身房没玩过的器材基本都玩了一遍,就是那个前踢腿机没有玩,怕伤到膝盖。

这个健身房比较小,里面器材不多。


办公交自行车卡

以前一直觉得还车会比较困难,今天试了发现没有想象的难,倒是取车有点难,走了一站才有车。

骑骑感觉还不错。


友吧今天

这周末去体验的场馆是:一兆韦德健身中心文一店。

前台的态度还不错,登记过后,带我参观了里面,参观了一圈,最后觉察到我不是来健身的,说:“你不是来健身的吧,是来做什么业务的吧,你直接说好了。”然后我和她说了来意,就这么结束体验了。

今天运气还算好,遇到的这前台比上次巧客音乐桌球的前台要友好,尽管连我的名片也没有拿去。我觉得是我介绍业务的水平还不够,不能引起她的兴趣。其实我就是来体验一下场馆的,没什么业不业务的。

场馆内不让拍照。有了这两次经验,以后要知道了,这个是行业规则,咱得有点职业道德。

这两次的场馆体验,比较大的体会是做业务员不容易。大多数时候,名片在别人眼里一文不值。我其实刚毕业时做过一阵子业务员,当时就有很大的体会,在中国,在大多数人眼里,业务员一般都是找不到工作才去做业务员的。所以,在中国做零起点的业务员,需要很大的勇气。

去一兆韦德之前还去了电大,本来是想去看看篮球场和足球场,结果很意外的发现,整个电大几乎都成了停车场

星期五 多云 13~25℃

js 和 as 触发事件书写习惯的相通思想

上次看《JavaScript编程原则和良好习惯》,今天写 js 时想起以前刚学 flash 时,是直接在按钮上写触发事件的,后来渐渐知道把触发事件写在帧上的好处。

js 和 as 在这方面有相通之处,js 直接把事件写在 dom 上,就相当于 as 直接把事件写在 button / mc 上。

as 触发事件

写在按钮上:

on(release){
 trace("这个事件写在按钮上");
}

写在帧上:

my_mc.onRelease = function() {
 trace("这个事件写在帧上");
}

js 触发事件

写在 dom 上:

<div onclick="alert(‘事件写在dom上’);"></div>

写在 <script> 里:

<div id="my_div"></div>
<script>
var my_div = document.getElementById("my_div");
my_div.onclick = function() {
 alert("这样不会使页面上的js东一块西一块,好管理");
}
</script>

如果引用了jquery,代码会简些:

$("#my_div").click(function() {
 alert("这样不会使页面上的js东一块西一块,好管理");
});


MeYoung

处理几处 ajax 提示。

第1220天:北软健身(10)

星期四 多云 15~24℃

北软健身(10)

跑步机又坏了。先做几个俯卧撑,再手持哑铃转体,然后去玩那个练臂力的,查了下,叫蝴蝶机。坐在那里做了两个,好费力,看看后面,插销是插在 80 磅的孔上,把它插到 60 磅,这下稍微轻松些了,不过也做不了几个,主要是左手。这玩意比俯卧撑来劲多了。

昨晚去得有点晚,以前去的话会提前 10 分钟下班,昨晚没提前。

每次去健身的时间很短,末班车是 18:40,走到健身房 10 来分钟,回来到车站 10 来分钟。如果是 18:00 点下班过去,只能练 10 来分钟,也就是身体刚刚有点发热,有时练过头,回车站得跑,要不然怕赶不上末班车。

如果 17:30 下班那是挺好的。


MeYoung

细节处理:注册成功页、找回密码页、新增/修改车辆。

调试细节比较费时间。

发现“调试阶段”比前面的“前后端初步合并阶段”要来劲,前面的阶段比较枯燥,进入调试阶段后团队成员交流会比较多,办公室比较热闹。


友吧今天

  • 开始写《友吧四周年总结》。今年下半年最大的体会是“更新网站、推广网站比建设网站难得多”,“筑城容易守城难”。肯定是有窍门的,摸索中,大不了再爬个四年…
  • 把顶上的提示“欢迎来到友吧”中的“到”去掉,改为“欢迎来友吧”,这个是借鉴淘宝的。
     

星期三 多云 15~24℃

“注册成功,x秒后自动跳转”的秒数倒计时JS

<div class="regMsg">
 <p><strong>恭喜您注册成功!</strong></p>
 <p><span id="tiao">5</span> 秒后自动跳转到登录页</p>
 </p><a href="/login">点此立即登录</a></p>
</div>
<script type="text/javascript">
function autoGo(secTime, url){
 var num = document.getElementById("num");
 num.innerText = secTime;
 if (–secTime >= 0) {
  setTimeout("autoGo("+secTime+",’"+url+"’)", 1000);
 } else {
  location.href = url;   
 }
}
autoGo(5, "/login");
</script>

2013-6-18 更新:

function countdown(obj, second, callback) {
 $(obj).text(second); // 这一行用了 jquery
 if (–second >= 0) {
  setTimeout(function () {
   countdown(obj, second, callback);
  }, 1000);
 } else {
  callback();
 }
}


系统学习js(8)

《JavaScript+DOM编程艺术》第五章 JavaScript编程原则和良好习惯

  • 预留退路
  • 分离JavaScript
  • 向后兼容

MeYoung

细节处理:快速注册页、注册成功页、找回密码页。

星期二 阴 18~23℃

jquery 记住用户名密码(cookie处理,未加密)

需要用到 jquery 的插件 jquery.cookie.js

附加提到的插件:jquery.md5.js  / jquery.sha1.js

参考:《jquery 记住用户名(cookie处理)

html:

<label>用户名:</label><input type="text" name="vcLoginName" id="vcLoginName"/><br />
<label>密码:</label><input type="password" name="vcLoginPassword" id="vcLoginPassword"/><br />
<input type="checkbox" name="rmbPw" id="rmbPw"/>自动登录

jquery:

var COOKIE_NAME ="vcLoginName";
var psd="vcLoginPassword";//注意这里的变量值一定要对应相应html元素的id,不然会报错;
if(COOKIE_NAME){ //如果这个cookie变量确实存在;
 //把cookie变量的值设置为username的值;
 $("#vcLoginName").val($.cookie(COOKIE_NAME ));
};
if(psd){  //如果这个cookie变量确实存在;
 $("#vcLoginPassword").val($.cookie(psd));//把cookie变量的值设置为password的值;   
}
$("#rmbPw").click(function(){
 if(this.checked){ 
  $.cookie(COOKIE_NAME,$("#vcLoginName").val(), { path: ‘/’, expires:10 });
  $.cookie(psd,$("#vcLoginPassword").val(),{path:’/', expires:10 });//同上设置
  //$.cookie(psd,$.md5($("#vcLoginPassword").val()),{path:’/', expires:10 });//md5加密,用此方法加密后,验证时需要和数据库密码(也经过md5加密)进行对比
  //$.cookie(psd,$.sha1($("#vcLoginPassword").val()),{path:’/', expires:10 });//sha1加密,用此方法加密后,验证时需要和数据库密码(也经过sha1加密)进行对比
 }
});


北软健身(9)

慢跑 700 米,打一会台球。

健身的人本来就少,天凉了,就更少了。


MeYoung

开始过第一遍页面。

星期一 多云 18~23℃

div固定悬浮(左侧、右侧、任意相对位置)

根据网上的一个右侧固定浮动div修改。兼容多浏览器。

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function scrollx(p) {
 var d = document, dd = d.documentElement, db = d.body, w = window, o = d.getElementById(p.id), ie6 = /msie 6/i.test(navigator.userAgent), style, timer;
 if (o) {
  cssPub = ";position:"+(p.f&&!ie6?’fixed’:'absolute’)+";"+(p.t!=undefined?’top:’+p.t+’px;’:'bottom:0;’);
  if (p.r != undefined && p.l == undefined) {
   o.style.cssText += cssPub + (‘right:’+p.r+’px;’);
  } else {
   o.style.cssText += cssPub + (‘margin-left:’+p.l+’px;’);
  }
  if(p.f&&ie6){
   cssTop = ‘;top:expression(documentElement.scrollTop +’+(p.t==undefined?dd.clientHeight-o.offsetHeight:p.t)+’+ "px" );’;
   cssRight = ‘;right:expression(documentElement.scrollright + ‘+(p.r==undefined?dd.clientWidth-o.offsetWidth:p.r)+’ + "px")’;
   if (p.r != undefined && p.l == undefined) {
    o.style.cssText += cssRight + cssTop;
   } else {
    o.style.cssText += cssTop;
   }
   dd.style.cssText +=’;background-image: url(about:blank);background-attachment:fixed;’;
  }else{
   if(!p.f){
    w.onresize = w.onscroll = function(){
     clearInterval(timer);
     timer = setInterval(function(){
      //双选择为了修复chrome 下xhtml解析时dd.scrollTop为 0
      var st = (dd.scrollTop||db.scrollTop),c;
      c = st – o.offsetTop + (p.t!=undefined?p.t:(w.innerHeight||dd.clientHeight)-o.offsetHeight);
      if(c!=0){
       o.style.top = o.offsetTop + Math.ceil(Math.abs(c)/10)*(c<0?-1:1) + ‘px’;
      }else{
       clearInterval(timer);
      }
     },10)
    }
   }
  }
 }
}
</script>
</head>
<body>
<div style="width:700px; margin:0 auto; height:1000px; background:#ccc">
 <div id="float_father">相对固定</div>
 <div id="float_father_2">相对固定(动)</div>
 <p>测试内容</p>
 <p>测试内容</p>
</div>
<div id="float_left">左侧固定</div>
<div id="float_right">右侧固定</div>
<script type="text/javascript">
//左右侧固定浮动的div建议放在html的最低部
//右侧固定
scrollx({id:’float_right’, r:0, t:200, f:1});
//左侧固定
scrollx({id:’float_left’, t:200, f:1});
//相对父级相定固定
scrollx({id:’float_father’, l:300, t:200, f:1});
//页面滚动同时滚动固定对像
scrollx({id:’float_father_2′, l:500, t:300, f:0});
/*
scrollx参数说明

id:浮动对象的id
r:右边距(窗口右边距,不写为靠左浮动)
l:左边距(距离父级对象的左边距) “r”和“l”只能有其中一个参数
t:上边距(默认贴着底边,0是贴着顶边)
f:1表示固定(不写或者0表示滚动)
*/
</script>
</body>
</html>


系统学习js(7)

《JavaScript+DOM编程艺术》第四章 案例研究:JavaScript美术馆 (4.4)

childNodes / nodeType / nodeValue / firstChild / lastChild


公交 91 路车队打电话来了

上次投诉的事终于有了下文。

91路车队的人在电话里说是估计要到年底才会全部换成那种比较大的新车子,目前是只有8辆新车子。

看来还是有望改观的,期待。。。

另外,上周在杭州网、新动网、19楼同步发了帖,反响强烈,尤其是杭州网上,很快就升到热帖了。

网络力量强大。


MeYoung

  • 修改完善浮动js;
  • 合并新增/修改交易单。

第1216天:降温,初中同学来

星期日 昨夜阵雨,今天阴 20~25℃

初中同学来

初中隔壁班的同学。毕业到现在有 14 年了,前些时候知道也在杭州。

站在小区门口,一开始两人相互都没认出来:)

星期六 上午多云,下午阴 24~32℃

友吧今天

  • 昨晚发出第一张名片,在一家桌球馆。
  • 增加场馆体验星级评定。

星期五 晴 22~34℃

北软健身(8):体会“冷静”

五台跑步机,有四台都坏掉了。没跑成。

做几个俯卧撑,热身一下,打十几分钟乒乓,一不小心把球打到天花板的隔层里,下不来了,看看时间也差不多了,收工回家。

这次打的时候突然体会到“杀球时要冷静”这句话的内涵(以前的心得大多是在打完球后才领悟到,这次是在打的过程中领悟到,比较难得):

杀球时,可能是力量瞬间爆发的原因,会有一股热血冲上头顶,此时的脑袋有种被冲昏的感觉,像是一片空白。“冷静”,指的就是杀球时将这股热血压制在脑袋以下。

这个心得在乒乓和羽球都通用。其实不只是乒乓和羽球是这样,生活中有许多的事,常常就是因为一时头脑发热,大好的事,就成了大坏的事。


买 移动硬盘数据线 和 手机数据线 要注意USB接口的类型

MiniUSB 接口厚一些,MicroUSB 接口薄一些。


MeYoung

完善“账户管理”、“新增/修改车辆”几个地方。

星期四 多云 23~35℃

发现京东的又一处细节完善

有一段时间没在京东上下单了,昨晚下单时突然发现一个小细节,在订单提交页面的“商品清单”下方有一行红字。

先发有货商品(如果订单部分商品缺货,优先配送有货商品)

在购买两件及以上的商品时会出现这一选项。

这是自去年那次不愉快的购物以来发现京东的又一处细节改进,不错。

相关日志:

MeYoung

  • 全站统一把“帐”改为“账”;
  • 完善“新增车辆”;
  • 合并“修改车辆”。