我有以下脚本来下拉div。 什么是正确的,当我点击div外面或选择另一个div下来已经滴下来div正在上升。
但是当我点击div中的任何内容时它不应该上升?
使用Javascript:
$(document).ready(function() {
$('#favorite_holder').click(function(e) {
$('#favorite_container').slideToggle("fast");
$('#account_container').slideUp("fast");
$('#cart_container').slideUp("fast");
e.stopPropagation();
});
$('#account_holder').click(function(e) {
$('#account_container').slideToggle("fast");
$('#favorite_container').slideUp("fast");
$('#cart_container').slideUp("fast");
e.stopPropagation();
});
$('#cart_holder').click(function(e) {
$('#cart_container').slideToggle("fast");
$('#favorite_container').slideUp("fast");
$('#account_container').slideUp("fast");
e.stopPropagation();
});
$(document).click(function(){
$('#favorite_container, #account_container, #cart_container').slideUp("fast");
});
});
HTML:
<div id="favorite_holder">
<span class="price">click here</span>
</div>
<div id="favorite_container" style="display: none;">
content here...
</div>
<div id="account_holder">
<span class="price">click here</span>
</div>
<div id="account_container" style="display: none;">
content here two ...
</div>
<div id="cart_holder">
<span class="price">click here</span>
</div>
<div id="cart_container" style="display: none;">
<form>
First name: <input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname">
</form>
</div>
答案 0 :(得分:1)
你可以这样做:
$('#favorite_container, #account_container, #cart_container').click(function(e){
e.stopPropagation();
})
演示Fiddle
答案 1 :(得分:1)
使用html和javascript的简单方法:
HTML:
<div id="favorite_holder" class="parent">
<span class="price">click here</span>
<div id="favorite_container" class="child" style="display: none;">
content here...
</div>
</div>
<div id="account_holder" class="parent">
<span class="price">click here</span>
<div id="account_container" class="child" style="display: none;">
content here two ...
</div>
</div>
<div id="cart_holder" class="parent">
<span class="price">click here</span>
<div id="cart_container" class="child" style="display: none;">
<form>
First name: <input type="text" name="firstname" /> <br\>
Last name: <input type="text" name="lastname" />
</form>
</div>
</div>
的javascript:
$(document).ready(function() {
$('.parent').click(function() {
$('.child').slideUp("fast");
$(this).find("div").slideDown("fast");
});
$('.child').click(function(e) {
e.stopPropagation();
});
});