Видео HTML5 не будет работать с плагином jquery bxSlider на iPad - PullRequest
16 голосов
/ 30 августа 2011

Я использую плагин Jquery bxSlider для создания слайдера галереи изображений и видео для iPad. Я использую тег видео HTML5 для реализации видео:

<video width="400" height="260" controls>
<source src="http://video-js.zencoder.com/oceans-clip.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
</video>

Исходный код видео отлично работает на iPad, когда он сам по себе, однако при объединении с разметкой ползунка видео не воспроизводится.

Тестовая ссылка: http://www.ekimmedia.com/totem/TIC/MG/

Если я удалю этот скрипт:

<script src="js/jquery.bxSlider.js" type="text/javascript"></script>

из исходного кода, затем видео работает на iPad.

Тестовая ссылка с удаленным скриптом bxSlider: http://www.ekimmedia.com/totem/TIC/MG/index10.html

Не уверен, что является причиной конфликта.

Спасибо

Ответы [ 3 ]

3 голосов
/ 29 марта 2016

Единственный способ заставить этот слайдер работать, это загрузить его локально с официального сайта bxslider. И попробуйте следовать их учебнику о том, как сделать адаптивный видео слайдер. Они нигде не упоминают об этих изображениях стрелок, поскольку они не входят в CSS. Поэтому не забудьте взять папку с изображениями из загруженного zip-архива bxslider и вставить ее в папку js вашего проекта.

В моей последней настройке у меня было 4 локальных файла в папке js: jquery-2.2.2.min.js, jquery.bxslider.css, jquery.bxslider.js и jquery.fitvids.js. Папка js также включала подпапку images, где были controls.png и bx_loader.gif.

Затем все это упоминалось в файле HTML следующим образом:

<head>
  <link rel="stylesheet" href="js/jquery.bxslider.css">
  <script src="js/jquery-2.2.2.min.js"></script>
  <script src="js/jquery.fitvids.js"></script>
  <script src="js/jquery.bxslider.js"></script>
  <script type="text/javascript">
  $(document).ready(function () {
    $('.bxslider').bxSlider({
      video: true,
      useCSS: false
    });
  });
  </script>
</head>
<body>
    <ul class="bxslider">
        <li>
            <iframe src="YOUR_LINK_TO_VIDEO" width="400" height="260" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
        </li>
        <li>
            <iframe src="YOUR_LINK_TO_VIDEO" width="400" height="260" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
        </li>
    </ul>
</body>

Я протестировал свое решение на iOS-устройстве, и все, кажется, работает нормально. Существует несколько похожее решение на эту проблему, вы также можете посмотреть на него.

2 голосов
/ 30 марта 2016

Попробуйте изменить положение

 `<script src="js/jquery.bxSlider.js" type="text/javascript"></script>`

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

0 голосов
/ 04 января 2012

Попробуйте просмотреть элемент видео с помощью средства отладки, такого как Firebug или Safari Developer Tools. Возможно, вам придется использовать браузер ПК / Mac, чтобы сделать это. Посмотрите, не теряет ли элемент video какие-либо атрибуты или добавляет дополнительные элементы после запуска сценария jquery. Сделав некоторые разработки для мобильных устройств с использованием видео, я могу сказать, что это очень обидно, тем более, что на мобильных устройствах существует примерно 82 миллиарда различных браузеров и версий ОС. Если вы видите, что элемент видео изменился, вам нужно будет добавить сценарий, который возвращает его к чему-то просматриваемому на вашем iPad.

Вы также можете убедиться, что ваши видео обернуты правильно. Похоже, что этот скрипт слайдера требует следующий формат:

<div id="slideshowcontainer">
 <div>slide1 content</div>
 <div>slide2 content</div>
 <div>etc...</div>
</div>

OR

<ul id="slideshowcontainer">
 <li>slide1 content</li>
 <li>slide2 content</li>
 <li>etc...</li>
</ul>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...