2014年1月11日
摘要: 在angular中我们可以通过directive()方法来定制自己需要的指令。指令需要很多配置,以下是指定的属性定义列表:restrict:用来描述指令的声明风格,常用的值有:E(元素),A(属性),C(样式),M(注释)。这些值可以组合使用,默认值为A。priority:设置当前指令相对于当前元素上其他指令的执行顺序。template:字符串形式的指令模板。templateUrl:使用url方式加载指令模板。replace:值为boolean,true表示替换指令所在的元素,false表示把当前指令追加到所在元素的内部。transclue:把指令元素中的子节点移动到一个新模板的内部。scop 阅读全文
posted @ 2014-01-11 16:48 杭城小威 阅读(240) 评论(0) 推荐(0) 编辑
  2014年1月7日
摘要: 说起angular的数据绑定,你可能脑海马上出现的就是这些$apply,$watch,$digest和脏值检测这个名词。正是由于这些名词背后的含义与功能组成了angular双向数据绑定这一项强大的功能。首先来看一下一张图,下面的来自angular官方的图片。解释了angular在数据绑定这部分是如何与浏览器的event loop机制做交互的。学习这个这个知识点之前,首先要理解下浏览器的event loop机制:浏览器的事件循环等待事件的触发。所谓事件包括用户的交互操作、定时事件、或者网络事件(服务器的响应)。事件触发后,回调会被执行。此时会进入Javascript上下文。通常回调可以用来修改D 阅读全文
posted @ 2014-01-07 13:13 杭城小威 阅读(739) 评论(0) 推荐(0) 编辑
  2014年1月6日
摘要: 前言:最近在在工作中需要开发一个类似微信公众平台的webapp后台管理应用,在框架的选者上面,之前已经有了一些backbone的开发经验。这次我想大胆的尝试一下这个让陌生又让我兴奋的Angular。 阅读全文
posted @ 2014-01-06 22:39 杭城小威 阅读(146) 评论(0) 推荐(0) 编辑
  2013年12月7日
摘要: 一般情况下CSS样式的权重值(非 important)有四位数字组成,每位数字的规则具体如下:对于选择器中给定的各个ID属性值,加“0,1,0,0”。对于选择器中给定的各个类属性值,属性选择或伪类,加"0,0,1,0"。 对于选择器中给定的各个元素为伪元素,加“0,0,0,1”。结合符和通配符“*”以及":not()"没有任何的加分权。对于行内样式(inline style),加为“1,0,0,0”对于"!important"加分高于上面的一切,将变成“1,0,0,0,0” 阅读全文
posted @ 2013-12-07 15:29 杭城小威 阅读(264) 评论(0) 推荐(0) 编辑
  2012年9月10日
摘要: 当我们在讨论元素的位置时,必须要理清楚所使用的是文档坐标还是视口坐标。 如果窗口没有滚动条或者文档比视口要小的时候,文档和视口的坐标系统是同一个。 但是一般来讲两种坐标的转换必须加上或者减去偏移量,例如一个元素N的视口坐标为(120,400),切滚动条从(0,0)移动到了(0,200).那么此时元素N的文档坐标就为(120,600). 下面分别说明如何查询窗口滚动条的位置及视口的尺寸大小。1.查询滚动条的位置var doc=document,docElem=doc.documentElement,docBody=doc.body;var scroll_left=docElem.scr... 阅读全文
posted @ 2012-09-10 11:27 杭城小威 阅读(471) 评论(0) 推荐(0) 编辑
  2012年8月1日
摘要: 函数节流的基本思想: 某些代码不可以在没有间断的情况连续重复执行。第一次调用函数,创建一个定时器,在指定的时间间隔之后运行代码。 当第二次调该函数时,它会清楚前一次的定时器并设置另一个。 如果前一个定时器已经执行过,这个操作就没有任何意义, 重点在于,如果前一个定时器尚未执行,其实就是将其替换为一个新的定时器。目的是只有在执行函数的请求停止了一段时间之后才执行。 猛点我!!!猛点我也没用!!! 阅读全文
posted @ 2012-08-01 11:33 杭城小威 阅读(349) 评论(0) 推荐(0) 编辑
  2012年7月25日
摘要: 大家都知道display:none(以下简称dn)与visibility:hidden(以下简称vh)都可以隐藏元素,但是他们有以下几点区别:1.空间占据 dn不会占据空间,vh则会占据空间2.reflow与repaint 设置dn时会触发浏览器的reflow与repaint,vh不会3.子元素牵连问题 如果给当前元素设置dn后,它所有的子元素不管如何挣扎都将被隐藏 如果给当前元素设置vh后,想要让它的某一个子元素显示,只需要设置visibility:visible;即可 阅读全文
posted @ 2012-07-25 09:43 杭城小威 阅读(149) 评论(0) 推荐(0) 编辑
  2012年7月14日
摘要: js中优化内存占用的最佳防止之一:一旦数据不再有用,最好将其值设置为null来释放引用。此做法适用于大多数全局变量和全局对象的属性;局部变量会在它们离开执行环境时自动被解除引用。var globalVar=null;当我们不再不使用globalVar的时候,需要手动为它解除引用。解除引用不意味着自动回收该值所占用的内存,而是让值脱离执行环境,以便GC(Garbage Collection)垃圾回收机制下次运行时将其回收 阅读全文
posted @ 2012-07-14 23:56 杭城小威 阅读(1806) 评论(0) 推荐(0) 编辑
  2012年3月13日
摘要: http://www.iteye.com/topic/1120344 阅读全文
posted @ 2012-03-13 17:15 杭城小威 阅读(156) 评论(0) 推荐(0) 编辑
  2012年3月2日
摘要: constructor属性始终指向创建当前对象的构造函数。一般情况下的constructor的属性非常容易理解。var arr=[1,2,3,4,5];//等价于var arr=new Array(1,2,3,4,5);alert(arr.constructor===Array)//truevar Foo=function(){}//等价于var Foo=new Function(){};alert(Foo.constructor===Function);//true//由构造函数实例化一个obj对象var obj=new Foo();alert(obj.constructor===Foo); 阅读全文
posted @ 2012-03-02 15:19 杭城小威 阅读(304) 评论(0) 推荐(0) 编辑