对于有强迫症的我,坚决抵制百度结果页面显示推广,刚开始安装了ADBLOCK PLUS屏蔽广告的插件,装上后效果的确不一样,页面变得更加清爽凉快,更容易找到自己想要的结果。前几天突然发现屏蔽不了结果页的推广,很纠结。于是乎开始寻找解救之法,截图如下: 可以做以下分析:content_left这个ID是搜索结果容器, 这下
分类归档:JavaScript
关于JS排序的纠结
闲得无聊,把以前的排序重新翻出来鼓捣鼓捣,这些都是javascript最基础也重常用的。全部代码均已测试 Array.prototype.swap = function(i, j) { //位置调换 var temp = this[i]; this[i] = this[j]; this[j] = temp; } Arr
深入理解JavaScript的闭包特性
有个网友问了个问题,如下的html,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4。 <!DOCTYPE HTML> <html> <head> <meta charset=”utf-8″ /> <title>闭包演示</t
JavaScript重构深入剖析(8)
JSDoc和JSLint JSDoc可以生成类似于JavaDoc一样的API文档,这对于前端开发是必不可少的。 下载jsdoc-tookit(http://code.google.com/p/jsdoc-toolkit/)和jsdoc-tookit-ant-task(http://code.google.com/p/j
JavaScript重构深入剖析(6)
利用继承来做事 终于要说到JavaScript的继承了,原型链继承是最常用的一种方式: function Video(){}; function Movie(){}; Movie.prototype = new Video(); Movie.prototype.constructor = Movie; //不要丢失构造
JavaScript重构深入剖析(5)
利用原型和闭包,完成组件方法 终于要定义一个组件方法了,利用原型来实现。看看这样如何: function Player(name){ Player.MIN_EXTENDED_TIME = 1; Player.MAX_EXTENDED_TIME = 3; this._name = name; }; Player.prot
JavaScript重构深入剖析(4)
JavaScript编码规则 没有规矩,不成方圆,JavaScript带来了灵活性,也带来了不受控的变量和访问,所以要用规则限制它。一支成熟的团队,还是一支新鲜的团队,规则应当是不一样的,我只是列出一些常见的或者有效的办法,来约束跳跃的开发人员,思维可以任意飞跃,代码却要持续受控。当然,任何规则都是建立在一定的认知基础
JavaScript重构深入剖析(3)
JavaScript的测试 进行JavaScript重构时,我希望引入易于使用的测试框架来保证重构的顺利进行,未来能持续通过测试代码对JavaScript逻辑的正确性做保障。 JsUnit (http://sourceforge.net/projects/jsunit/,http://www.jsunit.net/)
JavaScript重构深入剖析(2)
JavaScript的动态加载 前一节留下了一个问题,如果JS分门别类也清晰了,那我现在需要在必要的情况下才加载某一模块的JS,这个怎么实现呢? 方法一,最简单也是最容易被接受的方法,通过后台代码来控制,还是少些复杂的JS吧,通过一个标签、一个分支判断,就可以做到,何乐而不为呢? 方法二,如果要使用纯JS来控制,那么看
JavaScript重构深入剖析(1)
通常我们的团队中,开发人员在Java语言层面具备相当的技术素养,经验丰富,而且有许多成熟的、合理的规约,类型繁多的代码隐患检查工具,甚至在团队间还有计划内的评审和飞检。但是前端的代码不似后台,就像一个没人疼的孩子,不仅仅容易被低估、被轻视,导致质量低劣、可维护性差,技能上,更缺少优秀的前端开发人员。 JavaScrip