我正在使用媒体播放器播放音频和视频。我正在创建自己的按钮,以增加和减少媒体播放器的音量。工作也很好。

问题:



控制:

<object id="mediaPlayer" classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"
    height="1" standby="Loading Microsoft Windows Media Player components..."
    type="application/x-oleobject" width="1">
    <param name="fileName" value="" />
    <param name="animationatStart" value="true" />
    <param name="transparentatStart" value="true" />
    <param name="autoStart" value="true" />
    <param name="showControls" value="true" />
    <param name="volume" value="70"  />
</object>

代码:
function decAudio() {
    if (document.mediaPlayer.Volume >= -1000) {
        var newVolume = document.mediaPlayer.Volume - 100;
        if (newVolume >= -1000) {
            document.mediaPlayer.Volume = document.mediaPlayer.Volume - 100;
        } else {
            document.mediaPlayer.Volume = -1000;
        }
    }
}

最佳答案

如果将document.mediaPlayer.Volume设置为0后仍然可以听到音频,为什么不设置document.mediaPlayer.Settings.mute = true

您还确定document.mediaPlayer.Settings.Volume而不是document.mediaPlayer.Volume不是正确的引用吗?看起来您正在尝试直接访问参数/属性值,而不是通过mediaplayer的javascript(或jscript)界面访问。

这是Windows Media Player 7和更高版本支持的“最重要”参数的一些常规引用资料:
obj = document.getElementById("mediaPlayer");

  • Code
  • Parameters或默认值
  • Description
  • obj.Settings.autoStart
  • true
  • 指定或获取一个值,该值指示当前媒体项是否开始自动播放。
  • obj.Settings.baseURL
  • -
  • 使用嵌入在媒体项中的URL脚本命令指定用于相对路径解析的基本URL。
  • ClosedCaption.captioningID
  • 0
  • 指定显示字幕的元素的名称。
  • obj.Controls.currentMarker
  • 0
  • 指定当前标记号。
  • obj.Controls.currentPosition
  • 0
  • 以秒为单位指定媒体项中的当前位置。
  • obj.Settings.defaultFrame
  • -
  • 指定用于显示URL的框架的名称。
  • obj.enableContextMenu
  • true
  • 指定一个值,该值指示是否启用上下文菜单,该属性菜单在单击鼠标右键时显示​​。
  • obj.enabled
  • false
  • 指定是否启用Windows Media Player控件。
  • obj.fullScreen
  • false
  • 指定是否以全屏模式播放视频内容。
  • obj.Settings.invokeURLs
  • true
  • 指定一个值,该值指示URL事件是否应启动Web浏览器。
  • obj.Settings.mute
  • false
  • 指定音频是否静音。
  • obj.Settings.PlayCount
  • 1
  • 指定媒体项目将播放的次数。最小值为一。
  • obj.Settings.rate
  • 1.0
  • 指定播放速率。
    0.5等于正常播放速度的一半,2等于两倍。
  • obj.stretchToFit
  • false
  • 指定当视频窗口大于视频图像的尺寸时,控件显示的视频是否自动调整大小以适合视频窗口。
  • obj.uiMode
  • full
  • 指定在用户界面中显示哪些控件。
    可能的值:不可见,无,迷你,满。
  • obj.URL
  • -
  • 指定要播放的媒体项目的名称。
    您可以指定本地文件名或URL。
  • obj.Settings.volume
  • 最后设置
  • 零表示无音量,而100表示​​完整音量。
  • obj.Settings.balance
  • false
  • 设置左右扬声器之间的平衡。 0为正,-100为左全,100为右全。
  • obj.windowlessVideo
  • false
  • 指定或获取一个值,该值指示Windows Media Player控件是否以无窗口模式呈现视频。
    当windowlessVideo设置为true时,Player控件直接在客户区中呈现视频,因此您可以应用特殊效果或使用文本对视频进行分层。
    Windows XP或更高版本的Windows Media Player支持。
  • 关于asp.net - 如何使用JavaScript控制系统音量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2407002/

    10-17 02:58