Позиция предупреждения Javascript не в центре в хроме

Когда я использую предупреждение javascript, это происходит поверх браузера, не в центре в текущей версии хром. Как я могу управлять им и сделать его центром с javascript. В firefox и IE он работает отлично. Моя текущая версия хром 30.0.1599.66

Я хочу разместить поле предупреждения в точном центре браузера для всех типов браузеров и для всех версий. Пожалуйста, помогите........

Любая другая простая идея по предоставлению оповещения, чтобы она могла быть сосредоточена, также будет заметна...

Ответ 1

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

Что я нашел полезным, это использовать Alertify JS для всех потребностей оповещения. Вы можете настроить его для своих нужд, и в любом случае это выглядит потрясающе.

Ответ 2

Так как это поле по умолчанию, вы не можете его позиционировать, хотя вы можете создать свой собственный и поместить его соответствующим образом. попробуй это http://jqueryui.com/dialog/

Ответ 3

Вы не можете контролировать способ отображения предупреждения браузера. Вместо этого вы должны написать свою собственную функцию для отображения div с вашим сообщением. Это может быть что-то вроде этого:

function customAlert(msg) {
var alertDiv = "<div style='position: fixed; top: 20px; left: 20px;'>"+msg+"</div>";
document.getElementsByTagName('body')[0].appendChild(alertDiv);
}

Конечно, вы должны сделать некоторые расчеты, чтобы правильно расположить div, где хотите. Также было бы намного проще, если вы используете jQuery или некоторые другие js-рамки...

[Изменить] Попробуйте что-то подобное, если вы хотите принудительно всплывать из JS. Пример всплывающего окна

Ответ 4

Вы хотите, чтобы диалоговое положение alert() в центре. Попробуйте этот простой script.js

// alertMX -  improve alert()

$("<style type='text/css'>#boxMX{display:none;background: #333;padding: 10px;border: 2px solid #ddd;float: left;font-size: 1.2em;position: fixed;top: 50%; left: 50%;z-index: 99999;box-shadow: 0px 0px 20px #999; -moz-box-shadow: 0px 0px 20px #999; -webkit-box-shadow: 0px 0px 20px #999; border-radius:6px 6px 6px 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px; font:13px Arial, Helvetica, sans-serif; padding:6px 6px 4px;width:300px; color: white;}</style>").appendTo("head");

function alertMX(t){
$( "body" ).append( $( "<div id='boxMX'><p class='msgMX'></p><p>CLOSE</p></div>" ) );
$('.msgMX').text(t); var popMargTop = ($('#boxMX').height() + 24) / 2, popMargLeft = ($('#boxMX').width() + 24) / 2; 
$('#boxMX').css({ 'margin-top' : -popMargTop,'margin-left' : -popMargLeft}).fadeIn(600);
$("#boxMX").click(function() { $(this).remove(); });  };

Включить JQuery и использовать javascript:

alertMX('Hello!');