1、当需要执行的事件只执行一次。
先定义flag为true,在执行过程中加判断条件,如果flag==ture时,再去执行,在执行完成之后,将flag赋值为false。
案例:易职信首页火狐兼容题目反复执行的问题。
var flagTrouble = true;
if(h>100 && flagTrouble){
$('.common_trouble').animate({left:[-1500,'easeInOutBack'],'opacity':1},900);
$('.trouble_out').animate({'left':-1500},500);
$('.trouble_within').animate({'top':169,'opacity':1},800);
flagTrouble = false;
}
2、在需要执行的时候
同样先定义flag为true,在执行过程中加入判断条件,当flag==ture的时候,才去执行。
案例:职位分享页面,岗位职责和岗位要求内容过长时,滚动条到顶部判断翻页还是向下滚动的问题。
var canPrev = false;
var canNext = false;
document.addEventListener("touchend", function (e) {
var endx, endy;
endx = e.changedTouches[0].pageX;
endy = e.changedTouches[0].pageY;
var direction = getDirection(startx, starty, endx, endy);
switch (direction) {
case 0:
// alert("未滑动!");
console.log("未滑动")
break;
case 1:
// alert("向上!")
console.log("向上")
if(canNext == true){
mySwiper.slideNext();
console.log("向上1")
}
break;
case 2:
// alert("向下!")
console.log("向下")
if(canPrev == true){
mySwiper.slidePrev();
console.log("向下1")
}
break;
case 3:
// alert("向左!");
console.log("向左")
break;
case 4:
// alert("向右!")
console.log("向右")
break;
default:
}
}, false);
网友评论