Как закрыть окно предупреждения при нажатии на него? - PullRequest
1 голос
/ 26 мая 2011

Эй, парни и девушки! Сделано это настраиваемое окно оповещения.

<script type="text/javascript">
    $(function () {
        var $alert = $('#alert');
        if ($alert.length) {
            var alerttimer = window.setTimeout(function () {
                $alert.trigger('click');
            });
            $alert.animate({ height: $alert.css('line-height') || '80px' }, 200).click(function () {
                window.clearTimeout(alerttimer);
                $alert.animate({ height: '0' }, 200);
            });
        }
    });
</script> 

Я хочу, чтобы он был открыт, пока пользователь не решит щелкнуть по нему или где-либо еще на экране. Кого я заставлю это случиться?

Спасибо за помощь!

Ответы [ 3 ]

2 голосов
/ 26 мая 2011

Если предположить, что нажатие в любом месте (внутри или вне самого поля alert) должно скрывать / удалять предупреждение:

$('body').click(
    function(){
        if ($alert.is(':visible')){
            $alert.hide();
        }
    });

должно работать, я думаю.

1 голос
/ 26 мая 2011

Если вы хотите просто избавиться от него, попробуйте вызвать функцию hide () при возникновении события onclick.

$.click(function() {
  $alert.hide();
});
0 голосов
/ 26 мая 2011

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

Способ сделать это - привязать событие click к телу и прекратить распространение на любое событие, которое происходит внутри области, которая не должна вызывать закрытие предупреждения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...