Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Vimeo嵌入负载自动静音_Javascript_Html_Vimeo_Vimeo Api_Vimeo Player - Fatal编程技术网

Javascript Vimeo嵌入负载自动静音

Javascript Vimeo嵌入负载自动静音,javascript,html,vimeo,vimeo-api,vimeo-player,Javascript,Html,Vimeo,Vimeo Api,Vimeo Player,我有一个vimeo嵌入式视频,但似乎无法在加载时集成静音 这是我的视频代码 <div id="vimeo"> </div> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <script src="https://f.vimeocdn.com/js/froogaloop2.min.js"></scri

我有一个vimeo嵌入式视频,但似乎无法在加载时集成静音

这是我的视频代码

<div id="vimeo"> </div> 

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="https://f.vimeocdn.com/js/froogaloop2.min.js"></script>

而js使用的是

 <script>
// URL of the video 
        var videoUrl = 'http://www.vimeo.com/76979871?api=1?player_Id=vimeoyo';

        var endpoint = 'http://www.vimeo.com/api/oembed.json';
        var callback = 'embedVideo';
        var url = endpoint + '?url=' + encodeURIComponent(videoUrl)+ '&autoplay=true' + '&callback=' + callback + '&width=420';
        function embedVideo(video) {
            document.getElementById('vimeo').innerHTML = unescape(video.html);
        }
        function init() {
            var js = document.createElement('script');
            js.setAttribute('type', 'text/javascript');
            js.setAttribute('src', url);
            document.getElementsByTagName('head').item(0).appendChild(js);
            var player = 'vimeoyo';
            player.api('setVolume', 0);
        }


        window.onload = init;


  </script>

//视频的URL
var videoUrl=http://www.vimeo.com/76979871?api=1?player_Id=vimeoyo';
var端点http://www.vimeo.com/api/oembed.json';
var callback='embeddevideo';
var url=endpoint+'?url='+encodeURIComponent(videoUrl)+'&autoplay=true'+'&callback='+callback+'&width=420';
功能嵌入式视频(视频){
document.getElementById('vimeo').innerHTML=unescape(video.html);
}
函数init(){
var js=document.createElement('script');
js.setAttribute('type','text/javascript');
js.setAttribute('src',url);
document.getElementsByTagName('head')。项(0)。appendChild(js);
var player='vimeoyo';
player.api('setVolume',0);
}
window.onload=init;
我还有一个问题,那就是视频不是iframe

编辑:有一个使用iframe静音的答案。这里


但经过测试,使用这种小提琴,它似乎也不会使视频静音

由于您是从vimeo api手动创建
iframe
,因此只应在加载iframe后设置音量。因此,在
embeddevideo
函数中,将HTML插入
div
后,必须获得
div
的第一个子项(它是
iframe
),并向其添加
onload
事件

加载iframe后,必须使用froogaloop的
$f
函数将iframe封装到其库中,然后可以使用
api
方法将卷设置为零

在您的示例中,您试图在
字符串
中调用
api
方法,但它永远不会起作用

function embedVideo(video) {
  var div = document.getElementById('vimeo');
  div.innerHTML = unescape(video.html);

  var ifr = div.firstChild;
  ifr.addEventListener('load', function(e) {
    var player = $f(ifr);
    player.api('setVolume', 0);
  });
}

function init() {
  var js = document.createElement('script');
  js.setAttribute('type', 'text/javascript');
  js.setAttribute('src', url);
  document.getElementsByTagName('head').item(0).appendChild(js);
}
我已经创建了一个,您的示例正在运行。

**以下是我的解决方案:

(您需要自己的播放/暂停静音/取消静音图标)

花了好几年的时间尝试,但似乎什么都不管用

我只是想用简单的播放/暂停静音/取消静音控件(而不是默认控件)将Vimeo autoplay静音(第0卷)

(如果您想重新添加默认控件但保持静音,请删除“?background=1”。默认情况下,background=1将设置video.vimeo(“setVolume”,0)并隐藏控件,因此我还添加了加载时静音,而不设置background=1)

另请注意:“您需要在web服务器上运行,而不是直接在浏览器中打开文件。Flash和JS安全限制将阻止API在本地运行。”


是否尝试为
player.api('setVolume',0)播放不同的值js
文件上的code>?我已经尝试过了,但是我无法让任何api工作,即使我在视频URL中输入了?api=1。当涉及到
froogaloop
时,有两件重要的事情:给你的
iframe
一个
id
,并将其作为
player\u id=%%id%%
添加到Vimeo src url中,并在该url字符串中包含
api=1
。还有,你的iframe在哪里?它不是与JS一起添加的,也不是在HTML中添加的……JSFIDLE不会加载oEmbed示例的代码。然而,在最基本的层面上,这是从另一个SO问题中提取出来的,但它也不会沉默。谢谢,太棒了!我绞尽脑汁想弄明白为什么它没有静音!
  //load video muted
  var video = $("#myvideo");
  video.vimeo("play");
  video.vimeo("setVolume", 0);

    //toggle play/pause
  $('#play-pause').click(function() {
    $(this).toggleClass('play');
    if ($(this).hasClass('play')) {
      //pause video
      video.vimeo("pause");
      $(this).css('background', 'url("http://unclebarts.co.uk/wp-content/themes/bungabunga_bootstrap/img/video-controls/play.png") no-repeat');
    } else {
      //unpause video
      video.vimeo("play");
      $(this).css('background', 'url("http://unclebarts.co.uk/wp-content/themes/bungabunga_bootstrap/img/video-controls/pause.png") no-repeat');
    }
  });

  //toggle mute/unmute
  $('#mute-unmute').click(function() {
    $(this).toggleClass('mute');
    if ($(this).hasClass('mute')) {
      //unmute video
  video.vimeo("setVolume", 1);
      $(this).css('background', 'url("http://unclebarts.co.uk/wp-content/themes/bungabunga_bootstrap/img/video-controls/volume.png") no-repeat');

    } else {
      //mute video
  video.vimeo("setVolume", 0);
      $(this).css('background', 'url("http://unclebarts.co.uk/wp-content/themes/bungabunga_bootstrap/img/video-controls/mute.png") no-repeat');
    }
  });