我对 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/