У меня есть приложение, у которого есть «родительское» окно. В родительском окне есть пункты меню, подобные следующим (здесь используется PHP):
// sample link
echo "<li><a href=\"#\" onclick=openurl('covershift.php');>Shift Coverage</a></\
li>";
// logout link
echo "<li><a href=\"#\" onclick=openurl('logout');>Logout</a></li>";
Каждая ссылка открывает соответствующую страницу в отдельном «дочернем» окне. Когда родитель закрывает все дочерние окна должны закрыться. Я реализовал эту функциональность с Javascript, вот функция:
var childWindow = new Array();
var windowCount = 0;
function openurl(url)
{
if(url != 'logout') {
childWindow[windowCount]=window.open(url,'_blank','height=600,width=800,scr\
ollbars=1');
windowCount++;
if (window.focus) {
childWindow.focus();
}
} else {
var iCount;
for (iCount=0; iCount < windowCount; iCount++) {
if ((childWindow[iCount] != null) && !(childWindow[iCount].closed)) {
childWindow[iCount].close();
}
}
window.location='logout.php';
}
}
Вот моя проблема: когда пользователь перезагружает родительское окно и затем нажимает кнопку выхода, дочерние окна остаются открытыми. Это имеет смысл, поскольку массив childWindow теряется при перезагрузке родителя.
Как сделать массив childWindow постоянным после перезагрузки?
Спасибо!