【问题标题】:jQuery mobile issue only on iOS, when showing movies仅在 iOS 上显示电影时的 jQuery 移动问题
【发布时间】:2012-03-28 15:35:43
【问题描述】:

我正在使用 jquery mobile 开发一个移动网站,它可以在所有没有 iOS 的平台上完美运行。我试图删除 jquery 移动脚本,然后加载视频,但页面的其余部分很糟糕。这是一部mp4电影。

使用版本 jquery-mobile-1.0 和 video-js。

有人遇到同样的问题吗?

<div class="vjs-container">
<div class="videoWidth video-js-box test-css vjs-controls-below vjs-paused" style="width: 1809px;">
    <video height="416" width="720" data-subtitles="/sites/video/PublishingImages/test/test.jpg" poster="" preload="metadata" x-webkit-airplay="allow" class="video-js" tabindex="0" style="">
    <source type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;" src="/sites/video/PublishingImages/test/test.mp4"></source>
    <source type="video/ogg; codecs=&quot;theora, vorbis&quot;" src="/sites/video/PublishingImages/test/test.ogv"></source>

        <div class="vjs-flash-fallback">
            <img height="416" width="720" title="Ingen mulighet til å spille av video." alt="Ingen mulighet til å spille av video." src="/Style%20Library/gui/video-fail.jpg">
        </div>
    </video>
    <!-- Download links provided for devices that can't play video in the browser. -->
    <p class="vjs-no-video" style="display: none;">
        <strong>Last ned video:</strong> <a href="/sites/video/PublishingImages/test/test.mp4">MP4</a>,

        <a href="/sites/video/PublishingImages/Oppakning/test.ogv">Ogg</a><br>
        <a href="http://videojs.com">HTML5 Video Player</a> by VideoJS
    </p>
<div class="vjs-styles-check" style="position: absolute; display: none;"></div><img src="http://m.test.aspx" class="vjs-poster" style="display: block; height: 1045px; width: 1809px;"><div class="vjs-big-play-button" style="display: block;"><span></span></div><div class="vjs-spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div><div class="vjs-controls"><div class="vjs-play-control"><span></span></div><div class="vjs-progress-control"><div class="vjs-progress-holder"><div class="vjs-load-progress" style="width: 24.01%;"></div><div class="vjs-play-progress" style="width: 0%;"></div></div></div><div class="vjs-time-control"><span class="vjs-current-time-display">00:00</span><span> / </span><span class="vjs-duration-display">00:00</span></div><div class="vjs-volume-control"><div><span class="vjs-volume-level-on"></span><span class="vjs-volume-level-on"></span><span class="vjs-volume-level-on"></span><span class="vjs-volume-level-on"></span><span class="vjs-volume-level-on"></span><span></span></div></div><div class="vjs-fullscreen-control"><div><span></span><span></span><span></span><span></span></div></div></div></div>

<div class="clear"></div>

【问题讨论】:

    标签: jquery iphone video mobile jquery-mobile


    【解决方案1】:

    我也遇到过这个问题,如下图所示,但我已经解决了

    经过 2 天的调试、试验和错误,我采取了以下措施(我建议你也这样做):

    1. 升级jquerymobile lib到最新的(1.3.1版), video-js.js(4.1.0版)
    2. 获取常规 Web 服务器(nginx、apache、tomcat...)来提供视频

    我想澄清一下 jquerymobile 正在使用 video-js

    再解释一下动作2

    从快照中我们可以看到,有一个标记表示视频无法播放。 我检查了应用程序日志,

    考虑到视频是由为开发环境运行的进程提供的(类似于 python 中的工具包,它是来自 Djangorunserver 命令)。

    每次我通过 iPad 请求视频资源时都会发生异常。 因此,我更改了系统中的视频提供程序,比如 nginx,它确实有效!

    成功截图如下:

    【讨论】:

      【解决方案2】:

      由于 jQueryMobile 动态加载您的页面,您需要使用 VJS 的动态设置。你可以read about it in the documentation on their website

      您可能希望在 jQuery 的 pageInit 中执行此操作,如下所示:

      $( '#videoPage' ).live( 'pageinit',function(event){
       _V_("example_video_1", {}, function(){
            // Player (this) is initialized and ready.
          });
      });
      

      【讨论】:

      • 但是为什么它可以在 WP7 和 Android 上运行呢?这只是iOS中的一个问题。如果这是唯一的解决方案,我将在每个视频上使用相同的选择器时遇到问题。
      • 可能是两个系统的渲染时间不同。
      猜你喜欢
      • 1970-01-01
      • 2016-03-31
      • 2017-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-25
      • 1970-01-01
      相关资源
      最近更新 更多