Как разместить ссылку на веб-страницу в диалоговом окне предупреждения JScript?
-
09-06-2019 - |
Вопрос
Я хотел бы поместить ссылку на веб-страницу в диалоговое окно предупреждения, чтобы я мог дать более подробное описание того, как исправить ошибку, из-за которой создается диалоговое окно.
Как я могу сделать так, чтобы диалоговое окно отображало что-то вроде этого:
There was an error. Go to this page to fix it.
wwww.TheWebPageToFix.com
Спасибо.
Решение
Вы можете попробовать спросить их, хотят ли они посетить, через window.prompt:
if(window.prompt('Do you wish to visit the following website?','http://www.google.ca'))
location.href='http://www.google.ca/';
Кроме того, Internet Explorer поддерживает модальные диалоговые окна, поэтому вы можете попробовать показать одно из них:
if (window.showModalDialog)
window.showModalDialog("mypage.html","popup","dialogWidth:255px;dialogHeight:250px");
else
window.open("mypage.html","name","height=255,width=250,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,modal=yes");
Другие советы
Вы не можете.Окна оповещений не поддерживают HTML.Вы должны отображать ошибку как часть страницы, в любом случае это лучше, чем оповещения JS.
Вы не можете, но вот несколько вариантов:
window.open()
- создать свой собственный диалог- Использовать
prompt()
и попросите пользователя скопировать URL-адрес - Используйте JavaScript, чтобы просто перейти к URL-адресу напрямую (возможно, после использования
confirm()
спросить у них) - Включите
div
на своей странице с помощью кнопки [ИСПРАВИТЬ] и отобразите ее. - Используйте JavaScript, чтобы поместить URL-адрес исправления в буфер обмена пользователя (не рекомендуется).
Если вы Действительно хотел, вы могли бы переопределить поведение по умолчанию alert()
функция.Не говорю тебе должен сделай это.
Вот пример, в котором используется библиотека YUI, но для этого не обязательно использовать YUI:
Окно оповещения на основе YUI — замените уродливое окно оповещения JavaScript
Или используйте window.open и поместите ссылка там.
Даже если бы ты мог, alert()
коробки обычно модальные, поэтому любая страница, открытая из одного из них, должна открываться в новом окне.Раздражающий!
alert("There was an error. Got to this page to fix it.\nwww.TheWebPageToFix.com");
Это лучшее, что вы можете сделать с помощью JavaScript alert()
.Альтернативный вариант — попытаться открыть новое крошечное окно, похожее на диалог.В IE вы можете открыть его модально.