我有一个导航菜单,可在单击元素时显示和隐藏在移动设备上。除了三星Galaxy 3上的Firefox之外,它可以在任何地方使用。这是HTML:
<nav id="nav" role="navigation">
<ul>
<li>Menu Item 1</li>
<li>Menu Item 2</li>
Etc . .
</ul>
</nav>
<div id="nav-arrow">▼</div>
附加了点击事件的元素是“nav-arrow”。这是jQuery:
$("#nav-arrow").click(function() {
if ($("#nav").is(":visible")) {
$("#nav").slideUp(800, function() {
$("#nav-arrow").html("▼");
});
} else {
$("#nav").slideDown(800, function() {
$("#nav-arrow").html("▲");
});
}
});
在单击导航箭头之前,容器具有display:none属性。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:1)
jQuery Mobile需要&#34;委托&#34;方法:
$(document).delegate('#nav-arrow', 'click', function () {
if ($("#nav").is(":visible"))
{
$("#nav").slideUp(800, function()
{
$("#nav-arrow").html("▼");
});
}
else
{
$("#nav").slideDown(800, function()
{
$("#nav-arrow").html("▲");
});
}
});