Jquery 有人能帮我找到一种方法来阻止我的.trigger(';click';)持续触发fancybox事件吗

Jquery 有人能帮我找到一种方法来阻止我的.trigger(';click';)持续触发fancybox事件吗,jquery,fancybox,flip,delay,Jquery,Fancybox,Flip,Delay,当你点击时,我需要它翻转,然后延迟,然后用fancybox弹出。我能想出的唯一办法是在延迟后启动fancybox,那就是使用延迟插件和.trigger('click')在延迟后启动它。问题是它不断地反复触发.trigger('click'),如果没有.off(),我想不出阻止它的方法,因为它会杀死其他所有东西。我真的很想得到一些建议 jQuery.noConflict(); //第一个主页弹出框 jQuery(文档).ready(函数(){ jQuery(“#卡处理链接”).live('cl

当你点击时,我需要它翻转,然后延迟,然后用fancybox弹出。我能想出的唯一办法是在延迟后启动fancybox,那就是使用延迟插件和.trigger('click')在延迟后启动它。问题是它不断地反复触发.trigger('click'),如果没有.off(),我想不出阻止它的方法,因为它会杀死其他所有东西。我真的很想得到一些建议


jQuery.noConflict();
//第一个主页弹出框
jQuery(文档).ready(函数(){
jQuery(“#卡处理链接”).live('click',function(){
jQuery(“#卡处理框”).flip({
“方向”:“lr”,
速度:“300”
});
});    
//Fancybox弹出事件
jQuery(“#卡处理链接”)。延迟('click',400,function(){
jQuery(this).trigger('click').fancybox({
“onStart”:函数(){
jQuery(“#卡处理框”).hide();
jQuery(“#卡片处理弹出窗口”).show();
},
“transitionIn”:“弹性”,
“transitionOut”:“fadeOut”,
“speedIn”:300,
“加速输出”:500,
“宽度”:“420”,
“高度”:“自动”,
“滚动”:“否”,
'centerOnScroll':'true',
“覆盖颜色”:“透明”,
“onClosed”:函数(){
jQuery(“#卡片处理弹出窗口”).hide();
jQuery(“#卡处理框”).fadeIn();
}            
});
});
});

为什么如果您已经单击了,是否要触发“单击事件”a

jQuery(this).fancybox({

应该足够了

否则,您将进入一个无限循环,该循环将不断触发click事件

您可以使用
setTimeout
将执行延迟到稍后的时间

jQuery.noConflict();

// First Home Page Popout Box
jQuery(document).ready(function () {
    jQuery('#card-processing-link').live('click', function () {
        jQuery('#card-processing-box').flip({
            'direction': 'lr',
            speed: '300'
        });

        var $this = jQuery(this);
        setTimeout(function () {
            $this.fancybox({
                'onStart': function () {
                    jQuery('#card-processing-box').hide();
                    jQuery('#card-processing-popout').show();
                },
                    'transitionIn': 'elastic',
                    'transitionOut': 'fadeOut',
                    'speedIn': 300,
                    'speedOut': 500,
                    'width': '420',
                    'height': 'auto',
                    'scrolling': 'no',
                    'centerOnScroll': 'true',
                    'overlayColor': 'transparent',
                    'onClosed': function () {
                    jQuery('#card-processing-popout').hide();
                    jQuery('#card-processing-box').fadeIn();

                }
            });

        }, 400);
    });
});

我已经尝试过做同样的事情,但是没有.trigger().fancybox无法启动。为什么
fancybox
需要触发器我只是尝试了setTimeout建议,它的作用与使用.delayed而没有.trigger('click')一样。由于某些原因,.fancybox不会启动。如果您卸下翻盖并在单击时初始化fancybox,它会起作用吗?不幸的是,不。刚刚尝试过。-1:您已经在这里问过这个问题……如果没有回答,可能您需要更具体一些,但再次问相同的问题(不鼓励这样做)但这并不意味着你会更快地得到帮助
jQuery.noConflict();

// First Home Page Popout Box
jQuery(document).ready(function () {
    jQuery('#card-processing-link').live('click', function () {
        jQuery('#card-processing-box').flip({
            'direction': 'lr',
            speed: '300'
        });

        var $this = jQuery(this);
        setTimeout(function () {
            $this.fancybox({
                'onStart': function () {
                    jQuery('#card-processing-box').hide();
                    jQuery('#card-processing-popout').show();
                },
                    'transitionIn': 'elastic',
                    'transitionOut': 'fadeOut',
                    'speedIn': 300,
                    'speedOut': 500,
                    'width': '420',
                    'height': 'auto',
                    'scrolling': 'no',
                    'centerOnScroll': 'true',
                    'overlayColor': 'transparent',
                    'onClosed': function () {
                    jQuery('#card-processing-popout').hide();
                    jQuery('#card-processing-box').fadeIn();

                }
            });

        }, 400);
    });
});