如何创建一个关闭jQuery颜色框的全局函数

How to create a global function that closes a jQuery colorbox?

本文关键字:颜色 jQuery 函数 全局 一个 何创建 创建      更新时间:2023-09-26

首先我使用的是jQuery colorbox插件,到目前为止运行良好,但随后我想使用按钮关闭colorbox。不幸的是,我不能通过使用jQuery选择按钮的ID来触发该按钮上的点击事件,而不是说按钮必须调用一个名为closepan()的javascript函数(不幸的是这种行为对我来说是强制性的)。

我试图创建功能

closepan() {
$.colorbox.close();
}

第一种情况:内部

$(document).ready(function(){...}); 

但后来我得到了一个错误,关闭是未定义的。

第二种情况:之前

$(document).ready(function(){...}); 

但是颜色框方法是未定义的!

经过无数个小时的摆弄,我在stackoverflow.com上找到了几个关于这个话题的解决方案,我放弃了!我不知道该怎么做!

换句话说,如何创建一个名为closepan()的函数,该函数可以执行$.colorbox.close();同时可以在全球范围内使用我的按钮?

无论在哪里创建变量或函数,如果在window上创建,它都将全局可用。

window.closepan = function() {
   // hello there
}
function closepan() {
    if($.colorbox) {
        $.colorbox.close();
    }
}

然而,当有人点击你的按钮时,所有外部脚本都应该已经加载,所以不需要检查。。。

不要忘记在声明前面放上关键字function。。。

function closepan() {
    $.colorbox.close();
}

工作JSFiddle