捕获浏览器's卷事件
catching browser's volume event
我在客户端运行一个外部flash视频播放器,希望一直保持静音。在玩外部swf(VPAID广告)时,我很难控制播放器的音量。有没有办法通过JavaScript来判断浏览器的音量是否提高了?我没有使用HTML5。
感谢
否和是。目前,没有全局"browserVolumeChange"事件,在页面上的一些swf更改了音量等之后,可以捕捉到该事件。
但是,您可以教您的玩家将任何事件提交给javascript。对于卷,VPAID可能会调度AdVolumeChange
,您可以对其进行反应。
将"AdVolumeChange"的事件侦听器添加到加载的swf:
_vpaidSWF.addEventListener(YourVPAIDEventImpl.AdVolumeChange, onAdVolumeChange);
您不能确定您加载的swf是否实现得很好,所以如果卷发生了变化,您可能不会收到任何内容。你可以试着自己找出,但请记住,swf可能只是一个包装器,并加载另一个vpaid swf,而这个加载另一,a.s.o.…
也实现侦听器:
private function onAdVolumeChange(e:YourVPAIDEventImpl):void {
// here you can send custom notice to your js via ExternalInterface or <----- !
// try to mute/whatever directly
}
请记住发送跟踪以进行(取消)静音等!!!
为VPAID设置音量。你可以实现这样的东西:
public function set volume( arg:Number ):void {
_volume = arg;
if( _vpaidSWF == null )
return;
try {
_vpaidSWF.adVolume = arg;
} catch(e:*){}
}
如果你想让播放器默认静音,请收听AdImpression
、AdVideoStart
等,并将音量设置为零。。。但正如前面所说,不幸的是,你不能确定这些事件是否会到来
得到的swf的第一个事件是AdVideoMidpoint
-。-
摘要:没有默认事件,所以自己创建。
希望这在某种程度上有所帮助:)
编辑
我真的很想在这里有一个VPAID标签;)
http://www.iab.net/vpaid
相关文章:
- 如何将javascript事件从web浏览器wpf控件发送到wpf的c#代码
- 如何使用纯 JavaScript 在所有浏览器中区分左/右/中键单击事件
- image.onload事件和浏览器缓存
- 在循环中附加事件处理程序时出现浏览器性能问题
- 阻止浏览器对keydown事件作出反应,但不取消该事件
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 如何识别“;输入“;没有浏览器检测的事件
- 我可以让我的网站的内容可编辑区域对安卓股票浏览器上的触摸事件更敏感吗
- 是否可以更改更改特定事件在地址栏或浏览器中的URL
- 火狐浏览器不会在前进时触发流行状态事件
- 如何在 Windows Mobile 5 浏览器中检测 JavaScript 密钥事件
- 为什么IE浏览器不喜欢我的点击事件
- Kango 浏览器扩展开发中的鼠标悬停事件弹出窗口
- 监视激发的Javascript事件(无论浏览器如何)
- 为什么在Mac浏览器上按下metaKey时,Javascript会丢弃keyUp事件
- 如何由于浏览器的平滑滚动而忽略大量滚动事件
- 将键盘和鼠标事件从一个浏览器选项卡发送到另一个
- 如何切换浏览器事件目标
- dom事件-浏览器关闭时window.unload上的JavaScript警报,但刷新浏览器时不应发出警报
- 可滚动Div onfocus事件浏览器支持