Ссылка на диалог jQuery на прокручиваемой странице не видна в IE9 - PullRequest
1 голос
/ 01 декабря 2011

У меня есть длинный список ссылок, которые вызывают различные диалоги jQuery. Когда я прокручиваю вниз до нижней части страницы и нажимаю на ссылку, он успешно открывает мое диалоговое окно jQuery, но диалоговое окно не отображается, поскольку страница прокручивается до верхней части веб-страницы - диалоговое окно отображается под сгибом. и пользователь должен прокрутить вниз, чтобы увидеть диалоговое окно.

Мне нужно, чтобы диалоговое окно всплыло и было видно независимо от того, как далеко внизу находится ссылка.

Вот мой простой диалог jQuery code:

$(function () {
    $('#dlg').dialog({
        autoOpen: false,
        height: 460,
        width: 680,
        modal: true,
        position: 'center'
    });

    $('.vidlink').click(function(e) {
        $('#dlg').dialog('open');
    });

});

Вы можете увидеть, как это происходит на этой странице: http://www.ourlaughingplace.com/asp/park.aspx?step=3&locID=WDW&parkID=MGM&DLRparkID=MGM#

Прокрутите вниз до «Видеоклипы» и нажмите «Фантастический финал» с помощью IE9, если вы прокрутите назад вниз, вы увидите, что диалоговое окно открылось именно так, как и должно было - оно просто появилось ниже сгиба.

Я попытался установить позицию диалога в 'center' и 'top', но все еще имею ту же проблему.

1 Ответ

1 голос
/ 01 декабря 2011

Значение # для href ссылок соответствует верхней части документа. При использовании вашего текущего кода нажатие на ссылку работает, как и ожидалось: страница прокручивается обратно к началу.

Либо запретите поведение по умолчанию тегов <a>, открывающих диалоговое окно:

$('.vidlink').click(function(e) {

    e.preventDefault();

    $('#dlg').dialog('open');

});

Или измените значение href этих тегов на:

<a href="javascript:void(0)"></a>
...