摘要: 在IE中移除容器类节点,会引起内存泄露,最好是创建一个新的节点,比如div,然后将要删除的节点放入这个div中,再将div的innerHTML清空。其它的直接removeChild就可以了。var removeNode = !+"\v1" ? function(){var d;return function(node){if(node && node.tagName != 'BODY'){d = d || document.createElement('DIV');d.appendChild(node);d.innerHTML 阅读全文
posted @ 2012-03-21 18:00 有梦就能实现 阅读(743) 评论(0) 推荐(0)
摘要: if (! +"\v1")判断是否为IE浏览器。疑惑了好久,为什么这句能判断IE浏览器。网上找的答案:IE里不能把 "\v" 处理成垂直符,所以在IE里它就是表示"\v"这个字符串。所以"\v1"为字符串。前面的+号把后面的字符串转换成数字,由于"\v1"在IE里为字符串所以 +"\v1" 转换失败,其值为NaN所以 !+"\v1"的值为 true所以在IE里 if(!+"\v1")其他判断是否为浏览器的方法:if ("\v& 阅读全文
posted @ 2012-03-21 17:58 有梦就能实现 阅读(1507) 评论(0) 推荐(0)
摘要: 在编写程序的时候,总是不可避免的需要使用一些常量,甚至很多的常量。我们可以对常量进行一个很简单的分类: 记忆性常量:主要出于程序结构上的考虑而设定的常量。譬如为了避免一个没有字面意思的魔法数,或者避免拼写容易出错,或者不容记住的内容。 业务性常量:表示一个业务上的一个特定业务实体的属性或属性值。 很多的时候,一个业务性常量很多时候也是一个记忆性常量。 在一个大型项目中,参与的人员和代码数量通常都会比较多,没有好的管理策略,常量的使用往往想入混乱中。譬如重复定义,其维护的值甚至还不一致,以外覆盖;譬如仅仅为了使用某个常量,而引入某个包或者类,由此可能引出模块间的循环依赖等。 良... 阅读全文
posted @ 2012-03-21 17:34 有梦就能实现 阅读(859) 评论(0) 推荐(0)
摘要: 这里介绍一个基于jQuery开发的模板引擎。 jTemplates目前最新的版本是0.7.8,由tPython开发。官方网站:http://jtemplates.tpython.com 两个附件,一个是jTemplates官方网站提供的下载包,其中包括jTemplates的说明、jTemplates JS库、jTemplates DOC。 另一个是使用jTemplates做的三个DEMO。 一 , 简单介绍 它是一个基于jQuery开发的javascript模板引擎。它主要的作用如下: 1. 通过JavaScript获取JSON形式的数据; 2. 获取一个HTML模板,与数据相结合... 阅读全文
posted @ 2012-03-21 17:27 有梦就能实现 阅读(2502) 评论(4) 推荐(1)
摘要: 在jQuery validation plug-in 1.3插件库文件里面里面有写代码很有用比如required: "不能为空!",remote: "Please fix this field.",email: "格式错误.",url: "格式错误.",date: "格式错误.",dateISO: "Please enter a valid date (ISO).",dateDE: "Bitte geben Sie ein gültiges Datum e 阅读全文
posted @ 2012-03-21 16:36 有梦就能实现 阅读(437) 评论(0) 推荐(0)
摘要: 如果PHP对象存在递归引用,就会出现内存泄漏。这个Bug在PHP里已经存在很久很久了,先让我们来重现这个Bug,代码如下: <?phpclass Foo { function __construct() { $this->bar = new Bar($this); }}class Bar { function __construct($foo) { $this->foo = $foo; }}for ($i = 0; $i < 100; $i++) { $obj = new Foo(); ... 阅读全文
posted @ 2012-03-21 16:12 有梦就能实现 阅读(738) 评论(0) 推荐(0)