主要关于Canvas和Node的一些笔记

9.获取鼠标移动的位置,兼容各大主流浏览器(当然没有IE,他才不算主流,哼)

1 document.addEventListener("mousemove", function(e) {
2   var movementX = e.movementX   ||
3   e.mozMovementX||
4   e.webkitMovementX ||
5   0,
6   movementY = e.movementY   ||
7   e.mozMovementY||
8   e.webkitMovementY ||
9   0;
10 
11   // Print the mouse movement delta values
12   console.log("movementX=" + movementX, "movementY=" + movementY);
13 }, false);

IE和FF的定位有个1px的差别,实际上,IE的定位从0开始,FF的定位从1开始,FF永远会比IE大1px,需要根据实际情况处理。

10.currentColor属性可以用于CSS中替代当前选择其中文字的颜色,可以应用到一些小ICON的使用上面,对应的做法就是将显示部分做成一个蒙版,透过蒙版可以看到背景色,这时我们设置文字的hover改变颜色就可以很方便的改变icon的颜色了。

11.background:#f00 url(background.gif) no-repeat fixed 0 0/100px 100px;
“ / ”前面的0 0,就是background-position, 后面的100px 100px, 就是background-size的值,这种格式下,
background-position的值不能省略。

12.在canvas中使用socket即时通讯画图,使用越粗的线就会越卡,在线粗相同的情况下,实用的阴影越大也会更加卡,不过原因尚不清楚。

13.有的智障编辑器是不会提示拼写错误的,今天早上就把block写成了blcok调试了一个小时的bug没发现问题

14.在node里面进行路由操作的时候,一定不要把socket的connect事件加入到路由里面,不然会出现刷新一次多一个socket的情况。

15.在node里面使用res.writeHead会发生报错的情况,不能够在发送出消息后设置头部,但是使用setHead不会产生这种错误,如果想要获取到cookie的话使用req.headers.cookie可以获取到
“schoolid=1;schoolName=%E9%87%8D%E5%BA%86%E9%82%AE%E7%94%B5%E5%A4%A7%E5%AD%A6; _ga=GA1.1.1329053600.1463749095; a=000”
这种形式的字符串,可以手动解析,也可以使用parse-cookie的中间件。并且,在set-cookie的时候如果不配置max-age的话,将使用默认的session属性;当max-age为负数或者零时,cookie将不起任何作用。

16.(题外话)百度搜索的最近搜索全部存在localstorage里面的BDSUGSTORED数据,JSON格式哦。

17.cookie的domain,代表了其作用域,即有效范围。

一般是对应的http地址的最开始那部分的值。

比如对于访问http://login.live.com//xxxx 来说,cookie的domain是.live.com的话,那么就是和此网页相匹配,和此网页的Host=login.live.com相匹配,是有效的。

尤其需要注意的是,cookie的domain所代表的含义。

举例来说,如果一个cookie的domain是.live.com的话,那么对于去访问.users.storage.live.com

或.storage.live.com类型的地址的话,是无效的,因为.live.com,其作用域,只是xxx.live.com,而并不包括xxx.users.storage.live.com或xxx.storage.live.com类型的地址。