如何通过 javascript/jquery 事件控制 youtube iframe 声音

Posted

技术标签:

【中文标题】如何通过 javascript/jquery 事件控制 youtube iframe 声音【英文标题】:How to control a youtube iframe sound through javascript/jquery event 【发布时间】:2017-01-13 03:49:17 【问题描述】:

我希望捕捉 iframe youtube 视频中提供的声音,以便通过声音按钮停止/播放。

由于音量选择不再起作用,我尝试了这个。

function toggleSound() 
  var soundElem = document.getElementbyId("frame1") // also tried with iframe.getElementbyId()
  soundElem.volume = 0.3
  if (soundElem.paused) 
    soundElem.play()
  
  else
    soundElem.pause()
//my yt video
<iframe  id=iframe1 src="//www.youtube.com/embed/YOUTUBECODE?rel=0&autoplay=1" frameborder="0" allowfullscreen></iframe>

// my volume btn
<div class=volume-button onmousedown=toggleSound();>

我无法获取 youtube 音频并且 youtubeAPI 没有为我提供带有外部按钮的事件?

亲切的问候,

【问题讨论】:

【参考方案1】:

使用IFrame Player API,您可以使用mute 方法通过外部事件使声音静音:

var player

function onYouTubeIframeAPIReady() 
  player = new YT.Player('player', 
    width: 1280,
    height: 720,
    videoId: 'M7lc1UVf-VE'
  )


function toggleSound() 
  if (player.isMuted()) 
    player.unMute()
   else 
    player.mute()
  

【讨论】:

以上是关于如何通过 javascript/jquery 事件控制 youtube iframe 声音的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 javascript/jquery 编写 onshow 事件?

通过 Ajax 更新 JSF 组件后,JavaScript/jQuery 事件侦听器不起作用

JavaScript / JQuery事件委托如何实现?

如何使用FireBug调试Javascript/jQuery事件绑定

如果一个事件触发了随机次数,我如何在 Javascript/Jquery 中捕获最后一个?

javascript,jquery,怎么在父窗口触发子窗口(iframe)某按钮的click事件呢?