2009-05-16 2 views
1

Я использую триггер выгрузки страницы, чтобы предупредить пользователя о несохраненных изменениях, оставляя страницу/закрывая вкладку/etc ..., и это работает нормально.window.onbeforeunload локализация сообщений

//Exit event 
if (!changes_saved) { 
    window.onbeforeunload = confirmExit;  
} 
function confirmExit() 
{ 
    return "Your changes will be lost if you leave this page!"; 
} 

Моя проблема заключается в том, что браузер (как Firefox и IE) enwraps пользовательское сообщение с «Вы уверены, что хотите уйти с этой страницы» в начале и «Нажмите OK для продолжения или Отмена, чтобы оставаться на текущей странице. " в конце.

Мой вопрос: Есть ли способ избежать этого и полностью настроить сообщение в диалоговом окне? Потребность в этом не абстрактна, я разрабатываю многоязычный интерфейс и локализованное сообщение, смешанное с принудительным, просто выглядит глупо.

спасибо.

+0

принудительное сообщение на выбранном пользователем языке (например, язык браузера), и вы уверены, что он будет отличаться от вашего языка? – SilentGhost

+0

Абсолютно, по моему субъективному мнению, 90% + пользователей Windows не используют локализованные версии ОС и firefox на SuSe linux швах, чтобы игнорировать языковые настройки. – 2009-05-16 15:19:54

ответ

4

Этот вопрос был asked before.

Видимо, изменение этого стандартного диалога невозможно из-за безопасности браузера. Если это было возможно, это позволит злоумышленнику обмануть вас в том, чтобы оставаться на странице.

Однако язык сообщения основан на языковых настройках машины пользователя, как и в любом другом стандартном диалоге.

+0

+1 для указания фактов без приукрашивания и для поиска ссылки на другой вопрос. Однако я исправил ссылку. – Cerebrus

0

Я боюсь, что это невозможно. Если бы одна и та же проблема была однажды, он искал ее для поиска и нашел ссылку на msdn, говоря, что это невозможно сделать (для IE по крайней мере, к чему я был обеспокоен к тому времени).

Я еще не могу найти эту ссылку.

Смежные вопросы