【发布时间】:2014-11-11 14:13:33
【问题描述】:
我的网站上有一个 slideDown 功能。但不知何故,当您第一次单击它时它不起作用。所以我需要点击两次才能使该功能起作用。可能有什么问题?
当我再次单击按钮时,我还希望 div 向上滑动,不知道我将如何做到这一点。我尝试使用slideToggle,但最终导致div在关闭前上下移动了几次。即使这样,我也需要点击两次。
这是我的 JS:
function showCart() {
$("#rollDown").click(function() {
$("#shopping_cart_page").slideDown();
});
/* not relevant for this */
emptyBag = document.getElementById("emptyBag");
emptyBag.addEventListener("click", emptyCart);
}
这是我的 HTML:
<div id="navbar">
<ul>
<li><a href="products.html">Products</a></li>
<li><a href="index.html#about">About</a></li>
<li><a href="index.html#giveaways">Giveaways</a></li>
<li><a href="index.html#contact_field">Contact </a></li>
<li><a id="rollDown">Shopping Bag</a></li>
</ul>
</div>
【问题讨论】:
-
函数showCart();触发开始?
-
啊,一定是这样。第一次点击调用函数,第二次点击向下滑动。
-
你去 :) 查看我作为答案发布的示例。如果元素存在于 DOM 树中,则不需要将简单的点击事件放入自定义函数中。
标签: javascript jquery html slidedown slideup