У меня есть индексный сайт, который проверяет, существует ли файл cookie и имеет ли он значение EN
. Если это так, он должен перенаправить на английский index.shtml
. В противном случае или при отсутствии (английского) файла cookie, он должен быть перенаправлен на следующую страницу на немецком языке:
if (document.cookie) {
var cookieValue = document.cookie;
if (cookieValue.indexOf("MYCOOKIE=EN") > -1) {
window.location.href="en/index.shtml";
}
}
window.location.href="kategorien/hauptkategorie.shtml";
Теперь происходит нечто очень странное: существует файл cookie на английском языке (я проверил cookieValue
с предупреждением JavaScript, и он показывает EN
), но хотя href внутри if
не будет выполнен, а 2-й href будет быть казненным. Почему это так?
Когда я добавляю 2 else
с, он работает как ожидалось:
if (document.cookie) {
var cookieValue = document.cookie;
if (cookieValue.indexOf("MYCOOKIE=EN") > -1) {
window.location.href="en/index.shtml";
}
else {
window.location.href="kategorien/hauptkategorie.shtml";
}
}
else {
window.location.href="kategorien/hauptkategorie.shtml";
}
Почему это так, что он перенаправляет на hauptkategorie.shtml
, если я оставляю else
с?