读书人

前台开发小结

发布时间: 2012-11-07 09:56:10 作者: rapoo

前台开发总结

1、如果在频繁地发送ajax请求,最好在前面的请求发送完成返回后再发送下一个请求,这时候可以用一个全局变量来做状态的标志:
var bMadeRquest = false;//定义全局标志

if(bMadeRquest) return;//如果前一个请求没有返回则不再请求
new Ajax.Request(
??? url,??? ???
??? {??? parameters: pars,
??? ??? method:'get',
??? ??? onCreate:function(){
??? ??? ??? bMadeRquest = true;//请求开始时设置为true
??? ??? },
??? ??? onComplete:function(originalRequest){
??? ??? ??? bMadeRquest = false;//请求结束后还原
??? ??? ??? ......
??? ??? }
??? }
);

2、ajax请求返回的结果常常用特殊字符来分隔,记得的是:如果返回结果为空,split后的数组的length也是1。这样,for循环也可以执行进去。所以,一定要对返回的结果进行if的为空判断!这点常常容易忽略!

3、if一定要很经常判断,否则很容易报:java.lang.NullPointerException异常。如原先的写法:

for(var i=0;i<a.length;i++){var e = dojo.byId(a[i]);if(e){if(e.id==id){var j = 10;var  ii = window.setInterval(function(){if(j>0){if(j%2==0){e.style.border = '1px solid #EE82EE';}else{e.style.border = '1px solid #CCCCCC';}j--;}else{window.clearInterval(ii);ii = null;}},100);break;}}}
?

5、for循环一般会用在两个方面,一个的目的单纯就是用于遍历所有的值;另一个是遍历的目的是找其中符合条件的记录;如果是后一种,则会在for里加上if条件相等。如果确定只需要一条符合条件的记录,最好在if符合时加一个break;这样可以提交执行的效率。

?

读书人网 >Web前端

热点推荐