jquery中交替单击绑定-为什么函数I';我想把别人叫我绑起来?
我有一家酒吧,一开始是酒吧。酒吧里有一个圆圈。当你点击工具栏时,它会弹出。我想在圆圈和可点击的栏之间切换-圆圈应该关闭弹出窗口,栏应该打开弹出窗口。我似乎不明白为什么我可以在代码底部附近绑定函数dBind,但是当我尝试在函数中绑定它时,它调用的是我正在绑定的函数,最终无法达到目的jquery中交替单击绑定-为什么函数I';我想把别人叫我绑起来?,jquery,bind,Jquery,Bind,我有一家酒吧,一开始是酒吧。酒吧里有一个圆圈。当你点击工具栏时,它会弹出。我想在圆圈和可点击的栏之间切换-圆圈应该关闭弹出窗口,栏应该打开弹出窗口。我似乎不明白为什么我可以在代码底部附近绑定函数dBind,但是当我尝试在函数中绑定它时,它调用的是我正在绑定的函数,最终无法达到目的 function circBind(elem){ var thisDrawer = $(elem).parent(); var toggleWidth = thisDrawer.widt
function circBind(elem){
var thisDrawer = $(elem).parent();
var toggleWidth = thisDrawer.width() == 450 ? "25px" : "450px";
thisDrawer.animate({ width: toggleWidth }).css('overflow', 'visible');
if (thisDrawer.is("#bottom-drawer")) {
$
label = thisDrawer.find('.drawer-label');
if($(label).is(":visible")){
}else{
$('.search-drawer').bind('click',function(){dBind(this);});
$(label).show();
var thisPlaylist = $('#site-playlist');
$('.playlist-nav').hide();
$('.playlist-block').hide();
thisPlaylist.hide();
}
}
if (thisDrawer.is("#top-drawer")) {
$('.music-list').hide();
label.hide();
}
alert("cc");
$('.search-circle').unbind('click');
};
function dBind(elem) {
var thisDrawer = $(elem);
var toggleWidth = thisDrawer.width() == 450 ? "25px" : "450px";
thisDrawer.animate({ width: toggleWidth }).css('overflow', 'visible');
if (thisDrawer.is("#bottom-drawer")) {
label = thisDrawer.find('.drawer-label');
if($(label).is(":visible")){
var thisPlaylist = $('#site-playlist');
$('.playlist-nav').show();
$(label).hide();
thisPlaylist.fadeIn('slow');
$('.search-circle').bind('click',function(){circBind(this);});
alert("dc");
}
}
if (thisDrawer.is("#top-drawer")) {
label = thisDrawer.find('.drawer-label');
$('.music-list').fadeIn('slow');
$(label).show();
}
$('.search-drawer').unbind('click');
};
$('.search-drawer').bind('click',function(){dBind(this);});
可能是您已经注意到的,但circBind函数中的$本身是什么?您是否检查了firebug控制台中的任何错误?有两个错误是由非此代码引起的。其他代码的错误会导致这种情况吗?我知道错误可以扮演JS来扮演lil古怪的角色——我主要想验证它在一个部分(在cBind期间)调用绑定函数的事实,但在其他地方绑定它时却没有。另外,在dBind期间不调用cBind。。。即使我用同样的方式绑定它,是的,这是我注意到的,并且已经解决了它,但是问题的根源仍然存在。嗯,你介意把这个做一点,这样我就可以帮你调试了吗?