Fancybox не загружается в IE, игнорируя возвращение false - PullRequest
0 голосов
/ 07 декабря 2010

Я пытаюсь включить fancybox, чтобы при нажатии пользователем на миниатюру видео открывалось в окне / наложении Fancybox.У меня есть следующий JavaScript + HTML, все работает нормально во всех браузерах, кроме Internet Explorer.В Internet Explorer он просто переходит на страницу YouTube, содержащую видео.Кто-нибудь знаком с проблемой и знает решение?

$('body').delegate('.video .thumbholder a','click', function(){
    $.fancybox({
            'padding'       : 0,
            'autoScale'     : false,
            'transitionIn'  : 'none',
            'transitionOut' : 'none',
            'title'         : $(this).title,
            'width'         : 680,
            'height'        : 495,
            'href'          : $(this).attr('href').replace(new RegExp("watch\\?v=", "i"), 'v/'),
            'type'          : 'swf',
            'swf'           : {
                 'wmode'        : 'transparent',
                'allowfullscreen'   : 'true'
            }
        });
    return false;
});

Ответы [ 2 ]

0 голосов
/ 07 ноября 2014

Простой.

Поставьте это перед вашим вызовом $ .fancybox.

event.preventDefault();

Это остановит запуск href.

0 голосов
/ 07 декабря 2010

Если что-то идет не так (исключение выдается) перед вашим оператором return false, браузер перейдет по ссылке и уйдет, прежде чем появится сообщение об ошибке. Это, вероятно, то, что происходит в IE.

Жесткий код свойства href в параметрах fancybox, и пусть href фактической привязки будет javascript:void(0);. Таким образом, вы можете увидеть, что это за ошибка.

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