2

我几乎搜索了教程,提示介绍了如何在 jQuery 中检测点击。但我认为我的情况几乎与人不同。(也许不吧)

好吧,我正在使用功能来为我网站上的每个用户切换面板。(点击事件)

例如:

用户和他的 id 是 7,所以切换的功能是:togglePanel(7);

工作正常,没有问题。但是,当我尝试检查面板是否可见(事件主体单击)时,如果是,则将其隐藏。

=> 我不能再切换面板了。

我该怎么办,请给我一些建议。谢谢。

顺便说一句,我正在关注本教程

jQuery.noConflict();
jQuery(document).ready(function(){
    var panel = jQuery('.ui-context');
    var link = jQuery('.context-link');
    jQuery(document.body).click(function(){
        if (!panel.has(this).length) {
            panel.hide();
            link.removeClass('context-open');
        }
    });
});

这是切换面板功能:

jQuery.noConflict();
function togglePanel(userId) {
    var lctgLink = "#panel-u" + userId;
    var lctgPanel = "#context-ucp-" + userId;
    jQuery(lctgPanel).toggle();
    jQuery(lctgLink).toggleClass('context-open');
    return false;
}

html 将是:

<a href="javascript:;" id="panel-u-$uid" onclick="togglePanel($uid);">$username</a>
<div id="context-ucp-$uid" class="ui-context" style="display:none;">
<!-- STUFF HERE -->
</div>
4

0 回答 0