我已经建立了一个锚链接 - 我试图让它成为当我点击这个锚链接(包含在颜色框模态窗口中)时它将关闭颜色框。
$(document).ready(function(){
$('.newWindow a').click(function(){
alert('hello world'); // checking to be sure click function is being called
$.fn.colorbox.close();
});
});
我认为这会起作用..我可能做错了什么?
颜色框中加载的内容是页面上的隐藏div,而不是iframe。
编辑:我不知道为什么它不起作用。我见过别人的例子,就像我的一样。我注意到,当点击透明div以使用颜色框给出“景深”时,模态窗口将淡出/关闭。所以我将代码更改为:
$(document).ready(function(){
$('.newWindow a').click(function(){
$('#DOMWindowOverlay').click(); // click overlay div and close colorbox
});
});
不是真正的修复 - 这是一种解决方法......但它确实有效!
答案 0 :(得分:2)
$('.newWindow a').click(function(){
$.colorbox.close();
return false;
});
可以使用.fn
,(这是访问jQuery插件方法的标准方法),但任何colorbox都不需要它。
答案 1 :(得分:0)
.fn
是什么意思?
尝试
$.colorbox.close()
答案 2 :(得分:0)
它不起作用,因为运行docReady时链接不存在。在将来,您可以执行以下两项操作之一:A)将您的单击处理程序放在jquery live()函数中(仍在docReady中),或者B)使用colorbox的onComplete选项创建单击处理程序(放置在对象文字中)在创建颜色框时发送。)
此外,正如Thorsten指出的那样,.fn部分不是必需的,因为colorbox的作者有远见来创建一个到$ .colorbox的链接。
答案 3 :(得分:0)
只需放置锚onclick="$('#registerDialog').dialog('close');">
其中registerDialog
是模式对话框ID,例如data_dialog_id
@Html.ActionLink("Register", "Register", "Account", null,
new { @class = "openDialog",
data_dialog_id = "**registerDialog**",
data_dialog_title = "btewary.blogspot.in" })