Jquery 是否可以将处理程序附加到slidedown事件?
是否可以侦听特定元素上的slidedown事件 我希望这会很容易,因为:Jquery 是否可以将处理程序附加到slidedown事件?,jquery,slidedown,Jquery,Slidedown,是否可以侦听特定元素上的slidedown事件 我希望这会很容易,因为: $("#element").slideDown(); $('#element').bind('slideDown', function() { alert('Slidedown event fired'); }); 找不到“slideDown”作为一个 监听这样的事件可能吗?在我的帮助下,我在函数调用中添加了一个触发器,您可以绑定到: $(function(){ ;(function($)
$("#element").slideDown();
$('#element').bind('slideDown', function() {
alert('Slidedown event fired');
});
找不到“slideDown”作为一个
监听这样的事件可能吗?在我的帮助下,我在函数调用中添加了一个触发器,您可以绑定到:
$(function(){
;(function($){
var orig_slideDown = $.fn.slideDown;
$.fn.slideDown = function(){
$(this).trigger('slideDown');
orig_slideDown.apply(this, arguments);
};
})(jQuery);
$('.up').click(function(){
$('div').slideUp();
});
$('.down').click(function(){
$('div').slideDown();
});
$('div').bind('slideDown',function(){
$('div').append($('<p>').text('Down Triggered'));
});
});
<a href="#" class="up">Up</a> <a href="#" class="down">Down</a>
<div style="width:300px;height:200px;background-color:red;color:white;">
<p>Hello, world!</p>
</div>
$(函数(){
;(函数($){
var orig_slideDown=$.fn.slideDown;
$.fn.slideDown=函数(){
$(this.trigger('slideDown');
orig_slideDown.apply(这个,参数);
};
})(jQuery);
$('.up')。单击(函数(){
$('div').slideUp();
});
$('.down')。单击(函数(){
$('div').slideDown();
});
$('div').bind('slideDown',function(){
$('div').append($('p>').text('Down Triggered'));
});
});
你好,世界
要做这类事情,我只需添加更多的语义方法。所以,如果你有一个菜单,当你向下滑动它时,你想触发一个事件,那么你可以做如下操作:
var menu = $('#menu');
menu.open = function() {
menu.slideDown();
menu.trigger('menuOpened');
};
然后只需调用menu.open()
而不是menu.slideDown()
。当您构建彼此交互的其他对象时,这种方法更具可读性和可维护性。然后,如果您选择稍后更改打开动画(例如,更改为fadeIn或其他内容),则无需更新与之交互的所有内容