colorbox bug – 从链接或按钮关闭colorbox
我打电话打开弹出窗口
$.colorbox({ href: "notification.aspx" });
在notification.aspx我有
... OK
弹出窗口显示正常,但是当我单击按钮时,它会出现JavaScript错误。
在主页面的javascript我有
$('#btnClose').live('click', function () { alert('closing...'); // Alert shown as expected $.colorbox.close(); // Nothing happens, no JavaScript error //$.fn.colorbox.close(); // same //parent.$.fn.colorbox.close(); // same //$.colorbox.remove(); // same //$('#cboxClose').click(); // same //$('#cboxOverlay').click(); // same });
我只想关闭弹出窗口。
我错过了什么? 提前致谢。
编辑:我让它以某种方式工作,我会找出是什么使它工作。
$.colorbox.close()
是关闭colorbox的正确方法,不要听这些其他注释。 问题是你第二次加载彩盒。 从notification.aspx
删除jquery.colorbox.js
脚本块。
尝试
Close
$(document).ready(function(){ $.colorbox({ inline:true, href:'notification.aspx', onClosed:function(){ alert('closing'); $.colorbox.remove(); } }); });
谢谢大家的意见。
这真的很奇怪,但在摆弄后我发现这样做了
$('#btnClose').live('click', function () { $.colorbox.remove(); // You have to remove it first (don't know why) $('#cboxClose').click(); // Then this will close the box, $.colorbox.close() still doesn't work $.colorbox.init(); // Re-init, otherwise colorbox stops working });
希望它可以帮到某人。
编辑:虽然这解决了问题,问题的原因是我包括jquery两次! (谢谢杰克)
这可能对某人有所帮助。我创建了一个自定义关闭按钮。 我的自定义关闭按钮位于右上角,也可以关闭。 我的代码:
jQuery(document).ready(function(){ jQuery('').appendTo('.yourparentDiv'); $("#close").click(function() { jQuery('#cboxClose').click(); }); });
关闭彩盒时我遇到了问题。 它帮助了我。
这对我有所帮助
// 3.处理对话框取消按钮:
$("#CancelDeleteButton").click(function() { $.fn.colorbox.close(); return false; });
如果你有以下条件,大多数答案都会有效:1。同一域上的父和子2.孩子有JQuery
如果您要关闭子框并且您具有以下两个条件中的任何一个,请执行以下操作:
在父母做这个:
$('document').ready( function () { window.addEventListener("message", function (event) { $.colorbox.close(); }); });
在子项中添加一个关闭按钮,点击后面带有以下js