$("a[rel]").getOverlay().close();
$("a[rel]").close();
两者都不起作用。
$(document).ready(function () {
$("a[rel]").overlay({
mask: '#3B5872',
effect: 'apple',
onBeforeLoad: function () {
var wrap = this.getOverlay().find(".contentWrap");
wrap.load(this.getTrigger().attr("href"));
},
onLoad: function () {
$('.contentWrap form').submit(function (event) {
event.preventDefault();
$("a[rel]").overlay().close();
hijack(this, update_employees, "html");
});
}
});
});
function hijack(form, callback, format) {
$.ajax({
url: form.action,
type: form.method,
dataType: format,
data: $(form).serialize(),
success: callback
});
}
function update_employees(result) {
$("#gridcontainer").html(result);
}
有什么建议吗?
我使用Chrome是因为onLoad事件似乎无法在FF中正常工作。
答案 0 :(得分:17)
像这样:
$("a[rel]").overlay().close();
对于他们的大部分脚本,您可以调用原始方法,例如: .overlay()
然后在该对象上调用the method you want。
答案 1 :(得分:10)
如果要从js:
关闭它,则需要在属性中设置api:true
var overlay = $("a[rel]").overlay({
...
api:true
});
overlay.close();
答案 2 :(得分:5)
如果将叠加层分配给类,问题是会有很多叠加元素,所以必须关闭所有叠加元素:
$.each($(".caddy_grid"), function(i, v){$(v).overlay().close();})
或者,可以模拟关闭按钮上的单击:
在我的情况下触发叠加层的类是 caddy_grid_overlay ,因此可以按以下方式访问关闭按钮:
$('.caddy_grid_overlay .close').click();
答案 3 :(得分:2)
尝试
$("a[rel]").data("overlay").close();
我用它来关闭我的叠加层。
答案 4 :(得分:2)
它适合您,请参考此处的代码,
var api = $("a[rel]").data("overlay");
api.close();//close this overlay
参考:
答案 5 :(得分:1)
$(document).ready(function() {
var overlayObject = $("a[rel]").overlay({
top: 50,
expose: {
color: '#232323',
closeOnClick: true
},
onClose:function() {
$('#reg-login').hide();
$('#reg-register').hide();
},
effect: 'apple'
});
答案 6 :(得分:0)
你可以创建一个函数并从任何你想要的函数调用它。
这个函数将根据类名和链接工作。
function closeOverlay(){ 警报( 'AA'); var overlay = $(\“a.ShowOverlay \”)。overlay({ API:真 });
overlay.close(); }