【发布时间】:2018-08-30 07:25:02
【问题描述】:
我的 javascript 有问题,我会解释自己: 我打开两个弹出窗口用于 CRM 的内容加载。 一旦这两个弹出窗口完成加载(并且它们很重),我就会关闭它们。 但是现在,我需要在关闭两个弹出窗口后将父页面重定向到开头定义的 URL。
问题是在两个弹出窗口关闭后我从未设法重定向父窗口...我尝试了所有我能找到的...
这是我上次尝试的代码:
var test = $("#blob_detailView_moreAction_LBL_DUPLICATE > a").attr('href');
$("#blob_detailView_moreAction_LBL_DUPLICATE > a").attr('href', "#");
$("#blob_detailView_moreAction_LBL_DUPLICATE").on('click', '', test, function(event){
//on récupère l'url qu'il y avait sur dupliquer
var data = event.data;
var extrudedUrl = removeURLParameter(window.location.href, 'requestMode');
extrudedUrl = removeURLParameter(extrudedUrl, 'tab_label');
extrudedUrl = extrudedUrl.replace("#", "");
var haut=(screen.height-100);
var currentWindow = window.location.href;
var impressionWindow = window.open(extrudedUrl + "&requestMode=impression", '_blank', 'resizable=no,location=no,top='+haut+',height=100,width=100,menubar=no,scrollbars=no,statusbar=no');
var couvertureWindow = window.open(extrudedUrl + "&requestMode=couverture", '_blank', 'resizable=no,location=no,top='+haut+',height=100,width=100,menubar=no,scrollbars=no,statusbar=no');
//$(location).attr("href", data);
var test = $(impressionWindow).on("unload", '', data,function(){
$(couvertureWindow).on("unload", function(){
couvertureWindow.close();
});
impressionWindow.close();
});
test.promise().done($(location).attr("href", data));
});
感谢您的帮助。
【问题讨论】:
-
传递给
done方法的参数应该是一个函数或函数数组。见jQuery promise。 -
是的,但这并不能解决问题
-
您检查控制台是否有错误?请注意,
location是一个对象,而不是 HTML 元素,您不应该将其包装到 jQuery 中,即location.href = data;... -
控制台没有错误,在这种情况下我被很好地重定向但为时过早。我想在两个弹出窗口关闭后重定向
标签: javascript jquery redirect popup