善用事件代理,警惕闭包的性能陷阱。
简言之,闭包是产生一个没有被释放资源的栈区。换言之,就是一个不可控的内存空间占用,如果与事件相关联,JS的垃圾回收机制也不会去触碰该区域。 例如:我们有个项目需要实现在一个div中有上百个热点区域(a标签),类似淘宝店铺广告位自定义,那么按照传统的做法,我们会如下做一个最典型的闭包使用的实例,目的是
简言之,闭包是产生一个没有被释放资源的栈区。换言之,就是一个不可控的内存空间占用,如果与事件相关联,JS的垃圾回收机制也不会去触碰该区域。 例如:我们有个项目需要实现在一个div中有上百个热点区域(a标签),类似淘宝店铺广告位自定义,那么按照传统的做法,我们会如下做一个最典型的闭包使用的实例,目的是
淘宝的搜索框就用到了这样一种设计:这种设计一般是用javascript监控了输入框的focus和blur事件:实现代码如下: // 这段代码有两个很明显的缺点:“请输入关键字”这段提示共出现了3次,一旦要改这段文字就得改3个地方,维护显得非常不便。为了性能优化,我们会把javascript部分放到
自动补全也成自动完成,最经典的如google的搜索框,输入一个字母后会给用户很多提示选择 查看源码会发现input输入框加上了autocomplete="off",此为了屏蔽浏览器表单默认的记忆功能。淘宝,百度的搜索框也有该属性。autocomplete 属性是非标准的,首先在 IE5 中加入,后
不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。 让大家看看是否需要完善的 代码主要的目的是 批量更改 文件后缀 由于淘宝数据包图片类型的不同 所以要改一下适合的。 实现代码如下: 0) { $f2=str_replace(STA,"",$t); rename($t,$f
不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。 让大家看看是否需要完善的 代码主要的目的是 批量更改 文件后缀 由于淘宝数据包图片类型的不同 所以要改一下适合的。 实现代码如下: 0) { $f2=str_replace(STA,"",$t); rename($t,$f
先上张图实现原理先读取数据,用相应的数据段写入CSV的行的对应段,然后保存为CSV即可,在最新版的淘宝助手中测试通过了实现代码实现代码如下:function totaobao(){//加载所选商品$map['goods_id'] = array('in',$this->returnid());
淘宝,QQ,还有当当,亚马逊之类网之类的都有这个效果,原理是分段加载图片,主要用于大型网站节省带宽,可是他们提供的东西压缩混淆看不清,还有的要基于什么雅虎的什么库,总之是很麻烦的,JQ的控件倒是够清晰了,只是还是没有达到节省网络带宽的效果,于是我在JQ懒加载控件上进行一些改进,改进以后的最大的特点就
先描述一下出现这种匪夷所思bug的背景: 我在页面加载的时候加载一堆小缩略图, 这么多小的缩略图标签循环平铺下来,当单击小的图片时,动态加载大的图片显示,就类似于淘宝的商品查看图片。页面上有一个标签: 为了节省流量,加快页面载入速度,先不加载大图,当用户单击小图时,动态加载一张大图显示。 实现代码
最近升级了电脑主机,淘宝买的,卖家把我装好了64位的win7和一些基本程序。自己有个小程序是asp的,要让它运行起来,于是装上IIS(之前在添加删除程序里,现在叫 打开或关闭Windows功能 ,找了好一会儿),搭好web后,发现一直在运行,页面一页空白。好久没碰asp程序了,但还是有点印象的。于是
年前在重写淘宝旺铺里的会员卡脚本的时候,无意中发现了一个有趣的事情。代码类似: 实现代码如下:var associative_array = new Array();associative_array["one"] = "1";associative_array["two"] = "2";assoc