我有一个jQuery函数,当一个元素被点击一个隐藏的div显示.
$('.openHide').click(function(){ $(this).next('.hiddenContent').toggle(); });
我需要修改它,我可以关闭这个div,如果我点击不只是第一个元素.可能在模糊,但我不知道如何表示元素…
$('.hiddenContent').blur(function() { $('.hiddenContent').parent().children('.hiddenContent').hide(); });
这是我的HTML:
<span class="openHide">text here</span> <div style="display:none" class="hiddenContent"> hidden content here </div>
解决方法
>点击跨度,div应该被切换
>在身上点击div应隐藏
>点击div,事件不应该传播到身体
>点击跨度,事件不应该传播到身体
>在身上点击div应隐藏
>点击div,事件不应该传播到身体
>点击跨度,事件不应该传播到身体
$(document).ready(function() { $('.openHide').click(function(e) { $('.hiddenContent').toggle(); e.stopPropagation(); }); $(document.body).click(function() { $('.hiddenContent').hide(); }); $('.hiddenContent').click(function(e) { e.stopPropagation(); }); });