我想防止意外关闭彩盒,所以我将在加载的iframe中显示/隐藏关闭按钮。
我阅读了文档,但这两个例子似乎都不起作用:
var originalClose = $.colorbox.close;
$.colorbox.close = function(){
var response;
if($('#cboxLoadedContent').find('form').length > 0){
response = confirm('Do you want to close this window?');
if(!response){
return; // Do nothing.
}
}
originalClose();
};
或
<!-- calling colorbox's close method from within an iframe: -->
<a href='#' onclick='parent.$.colorbox.close(); return false;'>close this iframe</a>
...颜色框只是没有关闭。我做错了什么?
在控制台中我看到:
Uncaught TypeError: Cannot read property 'colorbox' of undefined
谢谢!
答案 0 :(得分:0)
应该是:
parent.$('#yourElement').colorbox.close();
其中 yourElement 将是包含颜色框的iframe的ID / Selector。
答案 1 :(得分:0)
您需要在colorbox.css
库之后加入jquery.colorbox.js
和jquery
。
您的第一个示例会覆盖colorbox close
函数,第二个示例只会关闭colorbox。
$('#cboxLoadedContent').find('form')
在我的示例中,我没有form
,因此我删除了form
选择器。
Colorbox只是div
,而不是iframe,所以我从这里删除了parent
:
parent.$.colorbox.close();
答案 2 :(得分:0)
尝试使用$('#cboxClose')。remove();关闭彩盒