星期三 小雨转阴 14~22℃

blog 系统升级(由1.8 Spirit Build 80722 升级到 1.8 Walle Build 100427)

选择对应的旧版本,再点击升级就行了。使用自动安装包,挺方便的,开始以为会破坏原来的模板和设置,原来不会。

新版本可以修改日志的发布时间,方便补充日志。比如今天停电,可以先把日志写在本子上,第二天发布时把发布日期改一下。


友吧今天

  1. 优化场馆列表静态页用户操作体验。
     
  2. 去掉“校园运动场”标签(可以归到“足球场”里),去掉“休闲广场”“器材卖场”标签,增加“瑜伽馆”“武术馆”“舞蹈机构”标签。
     
  3. 标签列表由按 tagid 排序改为按 dateline 排序,这样在增减标签时可以灵活控制标签显示顺序,通过修改 dateline 的值实现。

星期二 晴 12~22℃

友吧今天

  1. 发现录场馆居然是件有趣的事。这些场馆与其说是方便广大运动爱好者,不如说先是方便我自己 – -!
     
  2. 修改分享场馆页 tag 列表样式折行的问题。
     
  3. 制作场馆列表排序(城市区域、排行)的 html 静态效果,Ryan 将根据此效果处理程序。
     
  4. 场馆详细页放大地图,发现用 js 来处理会有一些问题,所以仍然使用 iframe。使用 js 和 iframe 都各有一些利弊。

    iframe 的弊端主要是第一次点击放大时需要再次加载地图,不过第二次之后点击就不需要再次加载了。好处是大小地图相互不影响,因为是使用两个分开的地图,用户在大图上进行缩放或移动操作后,切换到小图,然后再切换到大图时不需要重新定位,这在用户体验上有一定优势,否则每次切换都重新定位,会显得程序在自作主张,清空了用户之前的行为。

    使用 js 来处理会出现一些比较奇怪的样式问题,并且缩小后再点击目标点会弹出信息框(可能可以处理掉)。好处是因为使用同一个地图,第一次放大时速度会快一些,只是相当于在同一个地图上放大了一个级别,不需要再次加载地图,不过从第二次开始,每次都是在缩放,而 iframe 从第二次开始只是在两个 div 之间进行切换,效率会高一些。

    综合起来说,iframe 处理起来简单,js 处理起来较为复杂。iframe 在初次点击放大时显示较慢,但是第二次之后效率比 js 高;js 在初次点击放大时显示较快,但是每次切换都会需要重新定位,破坏用户之前的行为。

    遵循一个原则:不要把简单的问题复杂化。

第1056天:肌电图、心理检查

星期一 阴转多云(上午风大) 10~20℃

肌电图、心理检查

下午。省中医院。

肌电图检查结果正常。我是真的很希望能检查出毛病来,结果没有如愿,只能继续按滑膜炎和踝管综合症来治。

被电击的感觉一开始有点不适应,后来就慢慢适应了,还有点舒服。医生的话是说“把身上的生物电给引出来”。总的算下来可能被电了上百下。

顺便做了心理检查。据神经内科医生说,有些心理病人会在心理上把生理上的一些病痛主观放大,所以建议我去做一下心理检查。但是检查结果也排除了这个可能,虽然有轻微强迫症,但是不严重。我于是问什么叫严重。答说:比如不去做某一件事,就会吃不下饭,睡不着觉,那就严重了,就要吃药了。

另外了解到,做事认真的人较容易得强迫症,并且很难治。其实有时连医生也很难区分“认真”和“轻微强迫症”,所以该认真的时候还是要继续认真,做完考卷想检查就认真检查一遍吧。每个人或多或少都有点心理毛病,医学上所说的心理纯健康是理论值,但现实和理论通常都存在差距。我想来想去,觉得这个心理检查结果可以代表现代许多人。

接下去吃三种药:甲钴胺片、知柏地黄丸、三七伤药片。有可能要抽个时间去做个踝部小手术。

2011-04-13 更新:

昨晚才看到三七伤药片的说明上写着“药性强烈”,为了安全,停了。甲钴胺片主要是治疗神经的,因为肌电图检查出来神经没问题,所以这药估计没什么用。

决定还是去詹氏骨伤继续开中药。清明那次开了一星期,喝了有效果,开始以为是甲钴胺片在起作用,现在中药喝完了,甲钴胺片继续在吃,但是明显觉得没什么效果,由此推断应该是中药的效果。

詹氏骨伤那医生说“中药和中成药还是有差别的”,现在我有点相信了,打算至少喝上一个月看看。去年治肠炎喝了三个月彻底治好了,所以要相信中药的力量。

2011-04-15 更新:

昨晚停了甲钴胺片,发觉这药吃了小腿肚子会抽筋。不知道是不是这药的原因,反正昨晚停了,今天就好了。既然神经检查没有问题,这药也就没必要吃了。

总算到周末了,明天去开中药喝。

第1055天:《非诚勿扰2》

星期日 阴转多云 16~22℃

《非诚勿扰2》

还是有点味道的。


友吧今天

tag“校园操场”改名为“校园运动场”。

第1054天:周末,预约检查肌电图

星期六 多云转阴(清晨下了一点点雨) 15~22℃

预约检查肌电图

去年在省中医院诊断为滑膜炎和踝管综合症,结果用了半年药也没好。上周去詹氏骨伤看的时候,医生建议我去做肌电图检查。

今天上午去省中医院做肌电图。要预约,周末不做,周一检查。

附:肌电图包括神经电图,之前我以为两者是分开做的。

去年到现在,该查的都查了(胸片、腰椎CT、膝盖磁共振),肌电图应该是最后一项相关的检查了。

星期五 阴转多云 11~20℃

js改变地址栏参数

(一)

function orderby(searchname,searchv){
 var href = window.location.href;//网址全部地址
 var vyes = window.location.search;//有没有带参数
 if (vyes != ”) {
  var r, rtop, rend;
  r = vyes.search(searchname);//出现的位置
  if (r != -1) {//如果查询中有这个查询名
   rtop = vyes.substr(0,r);
   rend = vyes.substr(r);
   var r2 = rend.search(‘&’);
   if (r2 != -1) {
    rend = rend.substr(r2);
    //alert(rtop+searchname+’='+searchv+rend);
    now_href = window.location.pathname + rtop + searchname + ‘=’ + searchv + rend;
   } else {//如果后面没有&了.
    now_href = window.location.pathname + rtop + searchname + ‘=’ + searchv;
   }
  } else {//如果没有这个查询名
   now_href = href + ‘&’ + searchname + ‘=’ + searchv;
  }
 } else {
  now_href = href + ‘?’ + searchname + ‘=’ + searchv;
 }
 //如果参数的值(searchv)为空,则删除该参数,调用 例:orderby("valname", "");
 if (searchv == "") {
  var nr, nrtop, nrend;
  nr = now_href.indexOf(searchname);
  if (nr != -1) {
   nrtop = now_href.substr(0,nr);
   nrend = now_href.substr(nr);
   var nr2 = nrend.search(‘&’);
   if (nr2 != -1) {
    nrend = nrend.substr(nr2+1);
    now_href = nrtop + nrend;
   } else {//如果后面没有&了.
    nrtop = now_href.substr(0,nr-1);
    now_href = nrtop;
   }
  }
 }
 //alert(now_href);
 location = now_href;
}

参考:http://hi.baidu.com/feige05/blog/item/6dd520b72845b0f730add127.html

注意:在调用时不要使用 href="javascript:void(0)",在 ie 下无效。

(二)

function changeURLPar(destiny, par, par_value){
 var pattern = par+’=([^&]*)’;
 var replaceText = par+’='+par_value;
 if (destiny.match(pattern)){
  var tmp = ‘/\\’+par+’=[^&]*/’;
  tmp = destiny.replace(eval(tmp), replaceText);
  return (tmp);
 }else{
  if (destiny.match(‘[\?]‘)){
   return destiny+’&’+ replaceText;
  }else{
   return destiny+’?'+replaceText;
  }
 }
 return destiny+’ ‘+par+’ ‘+par_value;
}
alert(changeURLPar("http://xxx.com/view.php?do=tag&id=1", ‘id’, 99));

来自:
changeURLPar
http://HI.BAIDU.com/crp8/blog/item/4d568013b7c89d856438db67.html


mapbar api 信息窗口的一个莫名其妙的问题

此问题在 chrome 下出现。在下面代码的最末尾</span>后面要加一个空格,否则信息窗口的宽度和高度无效。排查了许久才排查出来,原来问题出在这么个不起眼的地方。

new MInfoWindow("<b style=’margin-left:3px’>$blog[subject]</b>", "<span style=’margin-left:3px’>$blog[address]</span> ")


友吧今天

  1. 场馆列表页增加地图伸缩功能(使用地图API的 resize(width, height) 方法)。
     
  2. 场馆详细页放大地图由 iframe 改成 js。(2011-04-12 更新:发现用 js 来处理会有一些问题,所以仍然使用 iframe)

 

第1052天:完善场馆页面

星期四 阴 10~16℃

友吧今天

  1. 地图气泡增加显示“分享者”。“分享者链接”直接链到分享者分享的场馆列表,而不是链到分享者的个人中心。
     
  2. 修复第一个人评论话题后不会刷新留言区的bug。
     
  3. 修复没有添加好友时进入“好友分享的场馆”,但是“我分享的场馆”列表不为空时不显示“您尚未添加好友”提示的bug(uch默认如果没有添加好友的话,会直接跳转到“我的列表”)。
     
  4. 场馆列表右端增加显示“当前显示 x~xx 条”(此前去掉了,现在加回去,并修改了显示位置)。
     
  5. 个人中心首页的ajax导航加入“场馆”。

第1051天:优化场馆页面

星期三 多云 13~16℃

友吧今天

  1. 地图气泡增加显示“电话”字段。
  2. 处理“好友分享的场馆”列表(如果没有好友时的友好提示)。
  3. 在city表增加电话区号(areacode)字段,输入固定电话时可省去输入区号。
  4. 在场馆列表页的列表标题右端加入“详情”链接。

 

第1050天:休息

星期二 多云 8~17℃

休息。

星期一(清明放假) 晴 6~15℃

让插入到 innerHTML 中的 script 跑起来

昨晚找到这个封装起来的方法,用起来挺方便的。

参考:
http://bbs.blueidea.com/viewthread.php?tid=2440594
http://witmax.cn/js-innerhtml-run-script.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
/* innerhtml.js
* Copyright Ma Bingyao <andot@ujn.edu.cn>
* Version: 1.9
* LastModified: 2006-06-04
* This library is free.  You can redistribute it and/or modify it.
* http://www.coolcode.cn/?p=117
*/

var global_html_pool = [];
var global_script_pool = [];
var global_script_src_pool = [];
var global_lock_pool = [];
var innerhtml_lock = null;
var document_buffer = "";

function set_innerHTML(obj_id, html, time) {
    if (innerhtml_lock == null) {
        innerhtml_lock = obj_id;
    }
    else if (typeof(time) == "undefined") {
        global_lock_pool[obj_id + "_html"] = html;
        window.setTimeout("set_innerHTML(‘" + obj_id + "’, global_lock_pool['" + obj_id + "_html']);", 10);
        return;
    }
    else if (innerhtml_lock != obj_id) {
        global_lock_pool[obj_id + "_html"] = html;
        window.setTimeout("set_innerHTML(‘" + obj_id + "’, global_lock_pool['" + obj_id + "_html'], " + time + ");", 10);
        return;
    }

    function get_script_id() {
        return "script_" + (new Date()).getTime().toString(36)
          + Math.floor(Math.random() * 100000000).toString(36);
    }

    document_buffer = "";

    document.write = function (str) {
        document_buffer += str;
    }
    document.writeln = function (str) {
        document_buffer += str + "\n";
    }

    global_html_pool = [];

    var scripts = [];
    html = html.split(/<\/script>/i);
    for (var i = 0; i < html.length; i++) {
        global_html_pool[i] = html[i].replace(/<script[\s\S]*$/ig, "");
        scripts[i] = {text: ”, src: ” };
        scripts[i].text = html[i].substr(global_html_pool[i].length);
        scripts[i].src = scripts[i].text.substr(0, scripts[i].text.indexOf(‘>’) + 1);
        scripts[i].src = scripts[i].src.match(/src\s*=\s*(\"([^\"]*)\"|\’([^\']*)\’|([^\s]*)[\s>])/i);
        if (scripts[i].src) {
            if (scripts[i].src[2]) {
                scripts[i].src = scripts[i].src[2];
            }
            else if (scripts[i].src[3]) {
                scripts[i].src = scripts[i].src[3];
            }
            else if (scripts[i].src[4]) {
                scripts[i].src = scripts[i].src[4];
            }
            else {
                scripts[i].src = "";
            }
            scripts[i].text = "";
        }
        else {
            scripts[i].src = "";
            scripts[i].text = scripts[i].text.substr(scripts[i].text.indexOf(‘>’) + 1);
            scripts[i].text = scripts[i].text.replace(/^\s*<\!–\s*/g, "");
        }
    }

    var s;
    if (typeof(time) == "undefined") {
        s = 0;
    }
    else {
        s = time;
    }

    var script, add_script, remove_script;

    for (var i = 0; i < scripts.length; i++) {
        var add_html = "document_buffer += global_html_pool[" + i + "];\n";
        add_html += "document.getElementById(‘" + obj_id + "’).innerHTML = document_buffer;\n";
        script = document.createElement("script");
        if (scripts[i].src) {
            script.src = scripts[i].src;
            if (typeof(global_script_src_pool[script.src]) == "undefined") {
                global_script_src_pool[script.src] = true;
                s += 2000;
            }
            else {
                s += 10;
            }
        }
        else {
            script.text = scripts[i].text;
            s += 10;
        }
        script.defer = true;
        script.type =  "text/javascript";
        scri
pt.id = get_script_id();
        global_script_pool[script.id] = script;
        add_script = add_html;
        add_script += "document.getElementsByTagName(‘head’).item(0)";
        add_script += ".appendChild(global_script_pool['" + script.id + "']);\n";
        window.setTimeout(add_script, s);
        remove_script = "document.getElementsByTagName(‘head’).item(0)";
        remove_script += ".removeChild(document.getElementById(‘" + script.id + "’));\n";
        remove_script += "delete global_script_pool['" + script.id + "'];\n";
        window.setTimeout(remove_script, s + 10000);
    }

    var end_script = "if (document_buffer.match(/<\\/script>/i)) {\n";
    end_script += "set_innerHTML(‘" + obj_id + "’, document_buffer, " + s + ");\n";
    end_script += "}\n";
    end_script += "else {\n";
    end_script += "document.getElementById(‘" + obj_id + "’).innerHTML = document_buffer;\n";
    end_script += "innerhtml_lock = null;\n";
    end_script += "}";
    window.setTimeout(end_script, s);
}
</script>
</head>
<body>

<div id="container"></div>

<script>
   var html = "<" + "script type=\"text/javascript\" src=\"test.js\"><" +"/script>";
   set_innerHTML("container", html, 0);
</script>
</body>
</html>


去杭州詹氏中医骨伤医院

前几天说很久没键身了,于是做仰卧起坐,结果只做了两晚,膝盖毛病就犯了,本来 3 月开始已经摘了护膝,这几天不得不又戴起来。休息两三天又好了些。

今天去杭州詹氏中医骨伤医院看专家门诊。

开了一星期活血通络的中药。先吃吃看效果怎么样。

天暖了,又要开始吃药了,不能让这腿就这么半废着。


友吧今天

昨晚找到的方法(见上),改变js加载顺序,先加载地图js,然后再加载统计js。

window.onload = function(){
 initMap();
 loadTongji();
}