菜鸟求助:JS 中想在 click 事件被触发的时候退出函数

2014-03-29 18:37:41 +08:00
 fyl00
自己通过判断一个变量的值来退出,但是没成功

代码如下

$(document).scroll(function () {
viewBottom = $(document).scrollTop() + $(window).height();
if ((divTop < $(document).scrollTop()) && ( divBottom > viewBottom )){
target.css({"background":"gray"});
pullComment.css({"display":"block"});
var pullCommentClick = null;
pullComment.click(function(){
pullComment.css({"display":"none"});
$(window).scrollTop(summaryBottom);
pullCommentClick = 1;
})
if (pullCommentClick){
return;
}
}
else {
target.css({"background":"white"});
pullComment.css({"display":"none"});
}
})
3370 次点击
所在节点    JavaScript
4 条回复
jsonline
2014-03-29 18:45:29 +08:00
把demo放到 jsfiddler 或者 jsbin
emric
2014-03-29 19:05:01 +08:00
把声明放到匿名函数外面.
ttph1oc
2014-03-29 21:03:36 +08:00
var pullCommentClick=null放到整个作用域外头
wizaliu
2014-03-29 21:38:58 +08:00
作用域不对,click里面改变的是全局变量pullCommentClick,而你在if里面判断的是scroll回调函数里面申明的pullCommentClick,他们不是一个,当然判断不到了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/106430

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX