亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

有沒有人發現一個BUG

鼠標剛進入一級菜單還沒碰到家用電器的時候,二級菜單就出現了。這個時候二級菜單是空的,怎么消除這個BUG啊

正在回答

7 回答

$(document).ready(function?()?{
???var?sub?=?$("#sub");

???var?activeRow,?activeMenu;

???$("#test").on("mouseenter",function?(e)?{
???????//?sub.removeClass("none");
???}).on("mouseleave",function?(e)?{
???????sub.addClass("none");

???????if(activeRow){
???????????activeRow.removeClass("active");
???????????activeRow?=?null;
???????}

???????if(activeMenu){
???????????activeMenu.addClass("none");
???????????activeMenu?=?null;
???????}
???}).on("mouseenter","li",function?(e)?{
???????sub.removeClass("none");
???????if(!activeRow){
???????????activeRow?=?$(e.target).addClass("active");
???????????activeMenu?=?$("#"?+?activeRow.data('id'));
???????????activeMenu.removeClass("none");
???????????return;
???????}

???????activeRow.removeClass("active");
???????activeMenu.addClass('none');

???????activeRow?=?$(e.target);
???????activeRow.addClass("active");
???????activeMenu?=?$("#"?+?activeRow.data('id'));
???????activeMenu.removeClass("none");
???});
});


0 回復 有任何疑惑可以回復我~

這個其實也不算什么bug,你看到的空子菜單實際上就是它的padding造成的,你可以把padding這個css樣式命令剝離出來,在鼠標移入li時addClass,移出li時removeClass。第二種方法比較簡單,看圖:

https://img1.sycdn.imooc.com//5c2282330001de0f12240761.jpg

把那行代碼寫過來

1 回復 有任何疑惑可以回復我~

$("#text")包含內層的ul,還有li,,,進入ul還沒進入li時,也會觸發下面的.on("mouseenter",function(e){
sub.removeClass("none")}),使得會出現#sub的樣式,這個bug看著很難受,直接寫成$("#text li")就行,讓他進入Li觸發,不過后面的事件委托的時候.on("mouseenter","li",function(e)前面就得加上$("#text")或者$("#text ul") 畢竟$("#text li")不能委托自己。小BUG完美解決。體驗感好些了。

0 回復 有任何疑惑可以回復我~

這是我的解決方案https://github.com/keyiwu/JD-Menu/releases/tag/1.1.1

0 回復 有任何疑惑可以回復我~
#1

匹諾曹諾匹

你好,404了
2018-01-16 回復 有任何疑惑可以回復我~

還是不行,綁定li的話,離開一級菜單到二級菜單的時候,二級菜單會隱藏

0 回復 有任何疑惑可以回復我~

我知道了,要綁定到li上

$('#test li')

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

有沒有人發現一個BUG

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號