我有这段代码
function checkAlerts() {
secondsSinceLoad += 1;
for(var mj = 0 ; mj <= alertList.length; mj++) {
if(alertList[mj]['time'] < secondsSinceLoad && alertList[mj]['time'] > -1 ) {
alertmsg = alertList[mj]['type'] + ":" + alertList[mj]['name'] + "\n" +alertList[mj]['subtitle']+ "\n"+ alertList[mj]['description'] + "\n\n";
window.open(alertList[mj]['redirect'],"name1","width=800,height=500,toolbar=no,location=no,menubar=no,copyhistory=no");
}
}
alertsTimeoutId = setTimeout("checkAlerts()",1000);
}
这是一个预定的弹出窗口。它会正确创建弹出窗口,但如果同时有超过1个预定弹出窗口 ,则只显示1个弹出窗口。
P.S。我认为这是因为“父弹出窗口打开了相同的窗口”
非常感谢帮助。
感谢名单。
答案 0 :(得分:1)
浏览器禁止在循环中打开多个弹出窗口,以阻止恶意网站用大量新窗口轰炸用户。
通过避免弹出窗口并在一个窗口中显示所有内容来解决此问题。