一些Jquery代码适用于浏览器,但不适用于WebView Android,有些代码

时间:2015-10-20 14:34:47

标签: javascript android jquery android-studio

  1. 我有一个包含Webview的Android应用程序。
  2. Webview包含使用Jquery的html页面。
  3. 首先,我想告诉你,jquery在某种程度上有效,让我证明你。

    我有一个带有正确id的html标题,当文档准备就绪时,我通过添加带有jquery的css颜色类来更改标题的颜色。

    <h1 id="title">Hardcoded Title </h1>
     ------------
     $("#title").css('color', 'red');
    

    问题

    我还有一个html5播放器,我用jquery检索它并获取currentSrc,其中包含视频的Url。

    不是那么重要,但这里是播放器

    <div class="flowplayer">
            <video id="sourceVideo">
                <source type="video/mp4" src="http://view.vzaar.com/5456131/video" />
            </video>
        </div>
    

    现在使用更多jquery和一个名为flowplayer.min.js的js,我调用一个方法来检索播放器并获取其src属性。

    var video = $('#sourceVideo')[0];
    var currentSrc = video.currentSrc;
    

    然后我继续将currentSrc添加到我的应用程序的标题中。

    $("#tituloPrueba").append(" - CurrentSrc : "+currentSrc);
    

    当我检查chrome时,这就是结果。 正如您所看到的那样,追加和颜色更改工作正常,以及存储currentSrc值的变量。

    enter image description here

    仿真器

    如果我只是附加文字或改变颜色,一切似乎都能正常工作。

    enter image description here

    但是只要我调用这行代码

      var video = $('#sourceVideo')[0];
      var currentSrc = video.currentSrc;(this one is the problem)
    
    好像jquery似乎停止了工作?

    有什么想法吗?

    注意

    加载外部js似乎有效,我创建了一个带有文档准备的新js,并在jquery代码中更改了标题的颜色,并且它有效。

1 个答案:

答案 0 :(得分:0)

  • 首先,检查android webview版本。
  • 其次,查看视频代码可用的属性。

或者,尝试这样做:

 alert( JSON.stringify(video) );

我认为您遇到的问题是currentSrc未定义,或者因为不支持标记视频,或者因为该属性不存在。

尽管如此,我还不太清楚你想要实现的目标。