0
我有一個jQuery的單擊問題。當我點擊搜索按鈕(#mini-panel-quick_menu .panel-col-last)時,搜索欄從屏幕頂部向下滑動(#block-search-form)。 「open」類使邊距爲0.默認情況下爲-4.5em,而css轉換爲滑動。模糊和點擊衝突
$('#mini-panel-quick_menu .panel-col-last.off').click(function() {
$(this).removeClass('off');
$('#block-search-form').addClass("open");
$('#edit-search-block-form--2').focus();
$(this).addClass('on');
});
$('#mini-panel-quick_menu .panel-col-last.on').click(function() {
$(this).removeClass('on');
$('#block-search-form').removeClass("open");
$('#edit-search-block-form--2').blur();
$(this).addClass('off');
});
$('#edit-search-block-form--2').blur(function(){
if ($('#mini-panel-quick_menu .panel-col-last').hasClass('on')){
$('#mini-panel-quick_menu .panel-col-last').removeClass('on');
$('#mini-panel-quick_menu .panel-col-last').addClass('off');
$('#block-search-form').removeClass("open");
};
});
整件事情正常。它會打開,當我模糊輸入框時它會關閉。如果我點擊搜索按鈕,它會按預期打開和關閉。問題是當我在搜索欄打開時單擊並釋放搜索按鈕時。 Mousedown模糊了輸入,而mouseup正在觸發點擊。
有沒有辦法讓模糊會做它應該做的,除非點擊按鈕?還是有更好的方式去做我一直在做的事情?我嘗試將點擊更改爲mousedowns(這不起作用,因爲模糊和mousedown同時行爲)和mouseup(與默認點擊相同),但它沒有幫助。
我不知道我明白你在推斷什麼。所有觸發點擊和模糊,而不是鼠標位置(沒有懸停動作)。 –
我試過把模糊功能放在mouseout裏面的按鈕,但仍然沒有運氣:( –