2

我有两个 .click 方法,我不确定为什么它们只能在彼此不存在的情况下工作。

编码:

1 负责滑动和隐藏内容

 var clickAction = function(){
        settings.tabHandle.click(function(event){
            if (obj.hasClass('open')) {
                slideIn();
            } else {
                slideOut();
            }
        });

        clickScreenToClose();
    };

2 负责选择性地重新加载一个div

$(
function(){
    var jContent = $( "#simplecart_items" );
    $( "a" ).click(
        function( objEvent ){
            var jLink = $( this );
            jContent.load( jLink.attr( "href" ) );
            return( false );                    
        }
        );

}
);

有任何想法吗?

4

1 回答 1

3

尝试替换 return( false ); 在 objEvent.preventDefault() 的第 2 位;

jQuery.on()

jQuery 中的事件处理程序可以使用返回值 false 或通过在事件对象上调用以下方法来防止冒泡:event.preventDefault()、event.stopPropagation() 和 event.stopImmediatePropagation()

event.preventDefault() 阻止浏览器对事件执行默认操作,例如表单提交、导航...

event.stopPropagation() 阻止 jQuery 调用附加到 DOM 更上层节点的处理程序。仍将调用附加在同一级别的处理程序。

event.stopImmediatePropagation() 停止调用所有处理程序。

从事件处理程序返回 false 会自动调用 event.stopPropagation() 和 event.preventDefault()

于 2013-06-18T23:59:40.580 回答