有 2 部分代码,第一部分用于桌面版本,第二部分用于移动版本。第一个版本工作正常(第一个图像)在此处输入图像描述,移动版本中出现错误,当您将鼠标悬停在列表项悬停上时,效果不起作用,出现边框颜色(背景(第二图像))在此处输入图像描述,如果将光标移动到此边框,悬停工作,但字段本身开始闪烁。如果在移动版本的代码中输入列表项的尺寸,如在大型监视器的版本中,即复制规则,则字段和光标都会闪烁。如何解决这种情况,使悬停效果不闪烁,而不是彩色边框的外观?下面是问题所在地的 html 和 css,仅用于 java 脚本。
if ('ontouchstart' in window) { var click = 'touchstart'; }
else { var click = 'click'; }
$('div.burger').on('click', function () {
if (!$(this).hasClass('open')) { openMenu(); }
else { closeMenu(); }
});
$('div.menu ul li a').on('click', function (e) {
e.preventDefault();
closeMenu();
});
function openMenu() {
(document.getElementById("see").setAttribute("style", "display: block;"));
$('div.menu-bg').addClass('animate');
$('div.burger').addClass('open');
$('div.x, div.z').addClass('collapse');
setTimeout(function () {
$('div.y').hide();
$('div.x').addClass('rotate30');
$('div.z').addClass('rotate150');
}, 70);
setTimeout(function () {
$('div.x').addClass('rotate45');
$('div.z').addClass('rotate135');
}, 120);
}
function closeMenu() {
$('.menu li').removeClass('animate');
(document.getElementById("see").setAttribute("style", "display: none;"));
setTimeout(function () {
$('div.burger').removeClass('open');
$('div.x').removeClass('rotate45').addClass('rotate30');
$('div.z').removeClass('rotate135').addClass('rotate150');
$('div.menu-bg').removeClass('animate');
setTimeout(function () {
$('div.x').removeClass('rotate30');
$('div.z').removeClass('rotate150');
}, 50);
setTimeout(function () {
$('div.y').show();
$('div.x, div.z').removeClass('collapse');
}, 70);
}, 100);
}
繁星点点滴滴
相关分类