Модальный не работает в IE9 - при открытии инструментов разработчика он работает нормально

0

Я пытаюсь получить модальную работу, и она кажется прекрасной во всех проверенных браузерах, за исключением одной проблемы в IE9. При загрузке страницы модальность не работает. Если я затем открою инструменты dev и снова закрою их (или даже просто откройте их), он отлично работает. Как я могу отладить эту проблему?

Изменение: Здесь ссылка: http://dev.birddartmouth.co.uk

Вот мой код.

HTML:

<a href="#" class="item" data-reveal-id="292">
    <img src="http://dev.birddartmouth.co.uk/wp-content/uploads/2013/10/096.jpg" />
</a>

<div id="292" class="reveal-modal">
    <a href="#" class="close-reveal-modal"><i class="close icon close-reveal-modal"></i></a>
    <div class="header">
    Bow tie neck silk overlay top/dress with sequin hem &#8211; cream, grey                                         <p>&#163;0</p>
    </div>
    <div class="content">
        <img src="http://dev.birddartmouth.co.uk/wp-content/uploads/2013/10/096.jpg" />
    </div>
</div>

JS:

$( "a.item" ).click(function( event ) {
  event.preventDefault();
    var elementClicked = "#" + $(this).attr("data-reveal-id");
    console.log(elementClicked);
    $(elementClicked).foundation('reveal', 'open');
});

$( "a.close-reveal-modal" ).click(function( event ) {
  event.preventDefault();
    var openElementClicked = "#" + $(this).parent().attr("id");
    console.log(openElementClicked);
    $(openElementClicked).foundation('reveal', 'close');
});
  • 1
    if (console) console.log else console = {}
Теги:
modal-dialog
zurb-foundation
internet-explorer-9

2 ответа

2

console.log выдает ошибки, когда консоль не открыта в IE.

Прокомментируйте консольные строки или проверьте поддержку

window.console && console.log(elementClicked);
0

Я знаю, что это старый поток, но я подумал, что все равно пойду на это решение.

Чтобы избежать проблемы с IE, как упоминалось в @epascarello, мы используем функцию, называемую ltc (log to console), которая находится в нашей библиотеке global.js.

function ltc(what) {
  try {
    console.log(what); 
  } catch(e) {
    return;
  }
}

Теперь вместо использования console.log("my message") это просто ltc("my message");

Ещё вопросы

Сообщество Overcoder
Наверх
Меню