jquery - 如何使用 jQuery 捕捉 colorbox 打开事件?

标签 jquery drupal colorbox

我对 jQuery 有非常非常基础的了解,但我需要解决这个问题:我有一个基于 Drupal 的网页,并且创建了一个在 Colorbox 中打开的 map (在 Colorbox Node 模块的帮助下)。所以页面上有一个超链接:<a class="colorbox-node init-colorbox-node-processed-processed" href="/places_fullscreen">Open in fullscreen</a> 。单击它 <div>#colorbox css-selector 将在 Colorbox-overlay 中可见。 首先,我想捕获打开颜色框时的事件,然后执行某些操作。

我浏览了互联网寻找解决方案,并尝试实现它们,但没有成功。

第一个建议:

(function($) {
    $(".colorbox-node").colorbox( {
    onComplete: function() {
        console.log('ColorBox is currently open');
    }
    });
})

第二个建议:

(function($) {
    if ($("#colorbox").css("display")=="block") {
        console.log('ColorBox is currently open');
    }
})

正确的解决方案是什么?

最佳答案

嗯,我知道我应该使用 Drupal 行为。所以下面的代码就可以解决这个问题:

(function ($) {
    Drupal.behaviors.whateverName= {
        attach: function (context, settings) {
            if ($('#colorbox').css('display') == 'block') {
               console.log('ColorBox is currently open');
            }
        }
    };
}) (jQuery);

关于jquery - 如何使用 jQuery 捕捉 colorbox 打开事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29694975/

相关文章:

jquery - 打开时颜色框太宽

jquery - 当对话框失去焦点时销毁它

javascript - Jquery 验证 : allow only alphabets and spaces

drupal - 在 Drupal 8 中的用户个人资料页面上创建自定义菜单选项卡

mysql - 无法使用 localhost 连接到 mysql

jquery - 当我单击页面上的任意位置时,尝试不关闭弹出的颜色框

javascript - jQuery ColorBox 确认覆盖模式对话框吗?

javascript - 使用 jQuery 自动调整图像大小以适应容器

jquery - FullPage JS - 固定标题 z-index 隐藏部分内容

php - 德鲁帕尔 PHP : problem with hosting a new drupal site