Phantomjs 开启子进程

phantomjs是一个headless浏览器。 因为它自带page,webserver模块,一开始我误以为它是类似浏览器的一个东西;实际上比作node更为合适:它是单线程的。 场景: phantomjs内部有一个待渲染page,外部通过webserver与之交互。 问题: 内部的page可能出错、超时,导致渲染失败 因为是以server运行,不会自己关闭。 现有机制是加了一个心跳包,让其自己超时关闭。但是这个方案有一个非常大的问题:phantomjs是单线程的,当page出错,导致死循环,它自己不能再执行其他任务了。 查阅api,发现phantomjs还带了一个有趣的功能:开子进程 遂如下实验: 开启: ../phantomjs process.js 2333 1 参数为:

js动画——加速度

Object是个dom,动起来就是改变定位。 CSS模拟 所以从top: 0到top: 100px就算运动了?当然不是,真实世界中的物体,任何移动都需要时间。CSS3加入了transition。所以最简单的模拟运动,是设置好transition-duration,比如设置为1s,那么0移动到100px,速度就是100px/s。结合transition-timing-function(在Chrome中可以直接看到对应时间曲线),可以模拟有加速度的object了。 这样做,起始和结束都是确定的,要做一些菜单等交互的缓动,绰绰有余。但是如果要结合控制,比如,控制一个球的运动,该怎么做呢?不断改变结束位置?但是transition-duration确定了,移动100px和移动200px都是1s?显然,需要js出场了。 js计算运动

滚轮缩放图表

做过的东西没多久就要忘记。还是写一写吧。最近为了练习原生js、ES2015,写一个线图chart。 滚轮缩放原理很清楚,对应放大-缩小就可以了。具体实现的过程还挺有趣的。 对于图表来说,即改变一下数据-图形的映射关系。再查查MDN上wheel event: https://developer.mozilla.org/en-US/docs/Web/Events/wheel 文中也给出了浏览器兼容方案。MDN还有一篇文章详述各浏览器值的不同:https://developer.mozilla.org/en-US/docs/Web/Events/mousewheel。 不考虑兼容性,

The Economist网站去除浏览限制插件

《经济学人》网站对未注册用户有文章篇数限制。可以启用浏览器的“隐身浏览”选项无限制浏览。 当然这样没有历史记录。写了一个Chrome小插件,这样不用隐身浏览也可看文章。 点击下载:TEHelper 注:因为是自制插件,需要手动安装: 地址栏输入 chrome://extensions/ 勾选“开发者模式” 将“TEHelper.crx”拖入浏览器窗口 出现询问窗口,点击“添加” 安装后刷新一下或重新打开浏览器即可无限制浏览。 原理:删除特定Cookie。 仅供学习,请勿用于其他目的。

落雨

对住南边的人来说,冬季里的潮湿实在让人生厌。幸好渥太华干得很。但到了快三月,这里也仍旧会飘雪。紧致晶莹,倒也不坏。就是要让人想起下雨的苏州了。 这季节少些颜色。过了冬,都还没醒的模样。却抵不住小雨。春天的雨下起来是不会停的,停了也潮润着。外头还有些凉,但到底后头漾着春风呢,少穿些也不碍。哦不,我们是讲究捂的。但自己捂得住,细雨里的景致捂不住。只要下过一阵,角落的绿色全漫出来了,着了水,嫩得钩眼;平日里没什么精神的石板也油亮油亮的。你待在旁边看,人来车往间打下的水滴,溅在石板路上,凹槽里积水映出的柳丝影子,一时乱了样子。可比屋檐下的石板有趣得多;柳梢上的绿色有些难捉摸,

葛帅

“老马,你说这样行吗?” 电话里的语气一如既往,问题却让我不太适应。我一边回答,一边望向窗外。 葛帅姓葛,单名一个“俊”。不要问他长相。因为他会摆着pose主动问: “老马,这样帅不帅。” 高中时我的智商正在自由滑翔,无暇顾及这种简单的问题。不过他旁边卷子做得飞快的天慧也不回答。我想沉默应该是个逼格比较高的做法。 此时葛帅已经把我拉进“星际γ(GaMa)公司”。这公司名称有我一半,也没让我出资,我想就先挂着吧。 我和葛帅一直有资金往来——主要是往,对我来说。 他第一次欠我钱是个意外。彼时“星际γ”还没成立,我一边要解决作业、思考人生;

美食记

梅菜扣肉 五花肉焯水再小火20分钟。拿出趁热涂老抽上色。 锅底薄油,小火慢煎滗油,四面都炸一下着金黄色。冷后切块。 梅菜洗净。肉汤加生抽、老抽、冰糖、梅菜,煮开。小火熬制15分钟。 将肉码入碗中,肉皮朝下。上铺梅菜。大火隔水蒸半小时至一小时,倒去碗中油水,再蒸。 自己做的时候煎炸没有炸好,涂了蜂蜜稍炸就焦了;时间尚早蒸了很多次,倒了两次油。 最后忘记勾芡了- -!   从只会煮粥到各种菜的记录: 红烧肉 糖醋排骨 你猜…… 玉米排骨汤 鲜肉月饼 黄瓜塞肉

零成本自制触控笔

触控笔这种东西谁会特意去买啊= = [不过有一支玩玩还可以画画嘛] 哦那我也不会去买…… 不过昨天洗完手拿纸巾擦干净后顺便擦下手机屏,发现虽然隔得很远它也动了。不知道为什么以前都没发现,忽然觉得可以做支简陋的触控笔吧。 潮湿纸巾可触控 折捏成柱状一样好用 当然于此也勉强可以算……但是这样很不稳定用一会儿就散了。 然后…………………… 来根吸管! 材料-吸管 纸巾呢,擦一遍湿手正好,不用全湿。或者你觉得这样什么的话……拿沾满水的纸巾随便洒满材料纸巾好了。 材料-湿润过的纸巾 请不要全湿,不然在屏幕上留下水渍。 神马你说为什么不用湿巾……因为~~~我没有……而且那个东西不是水也不知道一直擦屏幕好不好啊o(╯□╰)o纸巾最常见了对不对~ 剪一小段吸管,纸巾自己研究合适的叠法,尽量保证头部光滑,样品如下: 自制触控笔样品 对没错手要触碰到尾部,

苏州大学查期末成绩(已失效)

我们苏大的都知道那个教务系统……呃……一到期末就被玩坏了…… 但是今年这个…… 教务系统没有成绩查询 喂喂喂!这也太进击了吧! 不过成绩肯定在数据库里面没有错,学校不让我们看呢…………………… 难道还真的不看了吗!!!!! (那怎么看呢能不能快一点啊!) o(╯□╰)o不要急嘛我来教大家很简单的(所以这个方法随时失效~)(概括:拖一个书签,非学生账号登陆,点一下书签……done): 看到这个链接:>> 成绩查询 << 把这个叫“成绩查询”的链接拖到书签栏上(IE的话在链接上右击-“添加到收藏夹”) 添加书签 对其实我是广告商…… 打开教务系统请输入!

联想恢复键启动Ubuntu方法

最终效果:小Y电源键进入Win;恢复键进入Ubuntu。 其他联想笔记本也可改造。非联想笔记本因为无对应物理键,不如选单。 在虚拟机使用Ubuntu始终不如物理机;Wubi安装总觉的有些杂。正好小Y备份分区一直闲置,本来是为快速还原系统不用装驱动的,现在感觉甚是浪费。恰好以前也改造过那块分区,在bootmgr下添加grub。所以原理来说应该可以实现双键进入不同系统。 装Win8之后恢复键失效了,要先修复下。 找到这篇文章:[教程] 联想一键恢复7.2绿色安装全过程 非常简单 不用刻盘安装 不用重新分区 如果像我一样原来的已经失效或没有那个隐藏区了,请先看文章中提到的:在win7下修复一键恢复分区的办法 修复需要帖子中提到的联想一键恢复系统7.2镜像。 简单说就是分出新主分区——使用联想工具配置修复——放置所需文件。注意修复时候一定要看到Success。 Success

Jsoup解析nbsp空格乱码

当jsoup遇到“&nbsp”时,解析出来的东西不知道是什么编码的,并非普通空格的样子。直接eclipse复制出来,查看Unicode编码为"FF FE A0 00"。这样我就没法判断到底是不是空格。解决办法是: str.text().equals(Jsoup.parse("&nbsp").text()) 对,就是以其人之道还治其人之身。我们不用知道到底是什么,有没有点零知识证明的感觉╮(╯▽╰)╭ 不过我也想知道那个解析成什么了。

类比程序逻辑

有时候一句话很长所以看不太懂,比如聊聊天对方说: 我好朋友的好朋友的男朋友被我好朋友的好朋友的好朋友抢了 对,第一眼就知道是个狗血的故事,但是我眼睛看花了。 所以我决定把它写成这个形式: I.friend.friend.friend.chase(I.friend.friend.bf); 然后我们来import I.friend.friend.*; 这样就站在了“我好朋友的好朋友”角度观察: friend.chase(bf); 所以如果“我”是“我好朋友的好朋友”的话,“我”遭遇的狗血剧情就是被朋友抢了男朋友…

Java读带有BOM的UTF-8文件乱码

近期写Java程序,尝试写得象样点而不只是实现了个功能。 今天想用NetBeans打开Eclipse工程添加个界面,但是Eclipse默认不是UTF-8中文会乱码,于是把Eclipse默认改成UTF-8。需要读取的外部文本文件也用记事本存为UTF-8后发生了一点小错误,第一行的值总对不上。于是调试之发现: 图中line[0]为空如图,我已经把'#'作为注释行,这样临时解决了此问题。 如果想了解更多这里有篇文章:http://daimojingdeyu.iteye.com/blog/397661