Zurb Foundation Interchange не работает, имя_узла не определено
Я пытаюсь использовать обмен для изменения изображений в зависимости от размера экрана.
Однако при инициализации обмена изображения не загружаются. Затем, когда я изменяю размер браузера (1024px и ниже), я получаю сообщение об ошибке в консоли:
Uncaught TypeError: Cannot read property 'nodeName' of undefined
Который относится к строке 47 из foundation.interchange.js, которая:
if (/IMG/.test(el[0].nodeName)) {
Код, который я пытаюсь использовать:
<img data-interchange="[http://www.example.com/image.png, (default)], [http://www.exmaple.com/image-large.png, (large)]" />
Это полностью стандартно согласно документации Zurb. Я удостоверился, что изображения существуют, что они делают.
Я использую Foundation версии 5.2.2.
Есть идеи?
1 ответ
У меня была эта проблема, и я решил ее, выполнив несколько простых тестов...
Попробуйте некоторые из них:
- Проверка - вы вызываете только один экземпляр пути к скрипту 'interchange.js'
Зачем? - Это гарантирует, что вы избежите дублирования вызовов функций в плагине.
Как? - Ctrl-f (найти) слово "interchange.js" на исходной странице просмотра
Это лучший способ проверить это, особенно если вы работаете в инфраструктуре MVC или вложенных веб-форм.
- Чек - $(документ).foundation(); вызывается после загрузки скрипта interchange.js
например. В ЭТОМ ПОРЯДКЕ....
<script src="/foundation/foundation.js")></script>
<script src="/foundation/foundation.interchange.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$(document).foundation();
});
</script>
Зачем? - Обмен, как мне кажется, должен существовать уже после того, как основа будет создана.
Я надеюсь, что эти варианты помогут - извините, если это немного простой - но стоит попробовать все те же ура