我是jquery的新手,我不太了解它,但我需要它,因为我正在构建一个模板......这是情况,我有一个div,我想滑入页面(当我点击链接时,当我点击页面上任何其他地方滑出时...来自外部,顶部)...这就是我所拥有的:
var tmpl_name = '<?php echo $this->template ?>';
jQuery(document).ready(function() {
jQuery('#link').click(function() {
var topy = jQuery('#div');
topy.delay(0).animate({
top: parseInt(topy.css('top')) == 0 ? -topy.outerWidth() : 10
},500, 'easeInOutCirc', function() {jQuery(this);});
});
});
...并且它运行良好,当我点击链接div滑入页面,但我不知道如何实现当我点击页面上的任何其他地方滑出div时,我试图添加:
jQuery('body').click(function() {
var topy = jQuery('#div');
topy.delay(0).animate({
top: parseInt(topy.css('top')) == 0 ? -topy.outerWidth() : -500
},1000, 'easeInOutCirc', function() {jQuery(this);});
});
...但问题是当我点击链接滑动div时,div进出页面(可能是因为链接也在正文中,这个代码的第二部分也会影响它。
感谢您的时间......最好的问候
答案 0 :(得分:2)
尝试:
jQuery(document).ready(function() {
jQuery('#link').click(function(e) {
e.preventDefault();
var topy = jQuery('#div');
topy.delay(0).animate({
top: parseInt(topy.css('top')) == 0 ? -topy.outerWidth() : 10
},500, 'easeInOutCirc', function() {jQuery(this);});
});
});
要杀死事件传播到文档对象
答案 1 :(得分:0)
.stop()
功能可以在通话开始时链接,也可以在结束时链接以停止任何动画。
即。 $("#element").stop().bounce().stop();