第二期的总结
项目完成第二期了,例行下规则,总结下这期中碰到的问题,以及自己想到的问题,里面很杂,也不按照结构,样式,脚本来分离了,就直接写了
1.URL:链接中可能要带上些特殊的符号例:&^%$+,在传给别人时,需要对这些符号进行转义,如果直接用$smarty模板中写的话,有的会出现乱码,这时候可以想到用JS去设置href的值,在设置的过程中就可以使用encodeURL来对特殊字符进行转义,例用户名,用户所发的言.
2.slice()函数:str.slice(0,10)如果str不够10个字符时,就直接原句显示,如果超过10个字时,就会截断到10个字,这里指的是汉字,以前用到的都是substring()这个函数,他们主要的用法可以google下,这里不再阐述
3.在效果比较炫丽的时候,结构和JS肯定会相互惨杂着,这时候应该去把这个效果中所需要的东东结构先写上,然后再考虑JS部分,该隐的就隐,总结的话:就是结构最重要,样式和JS等结构确定了再去考虑
4.在写JS的时候,特别是事件相同的时候,效果相同的时候,一定要考虑复用性,别在一个文档中写上两段相同的代码:$(".a").bind('click',fn);$('.b').bind('click',fn)
5.样式命名:大体的框架可以使用head,nav,menu,banner,content,conatiner,footer这些可以代表确定的含义,其它的样式命名可以考虑使用**_**这样的结构,前面的**可以代表一个具体的含义,只需要公司内部知道确定含义就行,后面的**无所谓了,随你了
6.理解页面的内容真实含义,例如:一排3个项目,第一个项目是当前选择的项目,其它的2个项目是供用户选择的项目,那么这三个项目的含义并不一样,所以不能用ul,li来构造它们,第一个项目可以使用p
7.JS中效率问题:$("#id")比$("input[name=input]")效率要高
8.思路要清晰,如果在再算一个逻辑时,如果不好算的话,可以重写,别在原有的上面纠结,自己重写速度更多,在写逻辑比较复杂的JS的时候,例如向左,向右的时候,可以选写向左的效果,先从个例开始,例如:现在是第二张,向右是第三张,向左是第一张,然后再去推算别的,这样会更清晰
9:checked:这个属性常忘用this.checked = true;this.checked=false;jquey:if($(this).is(':checked')){....}
10:$.param()会将对象转化为URL的形式,如果是中文会对中文进行编码有类似于encodeURL()功能