jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。在移动端开发中,jQuery 可以用来创建交互式的弹出菜单。
以下是一个简单的 jQuery 移动端下拉菜单示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery Mobile Dropdown Menu</title>
<style>
.menu {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}
.menu a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}
.menu a:hover {
background-color: #f1f1f1;
}
</style>
</head>
<body>
<button id="menuButton">Open Menu</button>
<div id="menu" class="menu">
<a href="#">Home</a>
<a href="#">About</a>
<a href="#">Services</a>
<a href="#">Contact</a>
</div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
$('#menuButton').click(function() {
$('#menu').toggle();
});
});
</script>
</body>
</html>
原因:可能是由于移动端浏览器默认的触摸事件处理机制导致的。
解决方法:
touchstart
事件代替 click
事件。$('#menuButton').on('touchstart', function() {
$('#menu').toggle();
});
$('#menuButton').on('touchstart', function(event) {
event.preventDefault();
$('#menu').toggle();
});
通过以上方法,可以确保 jQuery 移动端弹出菜单在不同设备和浏览器上都能正常工作。
云+社区技术沙龙[第20期]
云+社区技术沙龙[第9期]
腾讯云GAME-TECH沙龙
GAME-TECH
腾讯云GAME-TECH沙龙
GAME-TECH
2022 vivo开发者大会
新知·音视频技术公开课
领取专属 10元无门槛券
手把手带您无忧上云