.toggle()
时遇到一些问题
截至目前,我可以成功地将鼠标悬停在div上并显示一个单独的div,然后将鼠标悬停并隐藏起来。点击也有效,它可以正确解除悬停的绑定。
我遇到麻烦的地方是'unlick'隐藏div并重新启用悬停。
以下是代码:
$('#song1').hover(
function() { $('#song1_selected').fadeIn(); },
function() { $('#song1_selected').fadeOut(); }
);
$('#song1').click(function() {
$('#song1_selected').show();
$("#song1").unbind('mouseenter mouseleave');
});
任何帮助都会得到帮助!!
谢谢,亚光
答案 0 :(得分:0)
如果您正在动态创建元素,.click()
并且所有普通处理程序都无效。
您需要使用.live()
绑定事件:
$('#song1').live('click', function() {
...
答案 1 :(得分:0)
如果只想在每次点击时设置一个标志并在想要淡入/淡出时检查它,而不是绑定/取消绑定?
$('#song1').hover(
function() {
if ( ! $(this).data('activesong') ) {
$('#song1_selected').stop().fadeIn();
}
},
function() {
if ( ! $(this).data('activesong') ) {
$('#song1_selected').stop().fadeOut();
}
}
);
$('#song1').click(
function() {
var isActive = !$(this).data('activesong');
$('#song1_selected').toggle(isActive);
$("#song1").data('activesong', isActive);
}
);