我点击按钮后想在网页上播放一些声音.这是我的代码,但它显示错误.
SoundPlayer x = new SoundPlayer();
x.SoundLocation = "WindowsBalloon.wav";
//x.Play();
x.PlaySync();
Run Code Online (Sandbox Code Playgroud)
错误:
请确保指定位置存在声音文件.
但该文件存在于我的项目中,我确信该地址是正确的.
Har*_*aid 11
您无法使用System.Media.Soundplayer类在网页上播放文件!
它将在服务器端而非客户端播放声音.
如下面链接所述
- Web主机上的C#System.Media.SoundPlayer类问题
- 自动播放声音的最"兼容"方式是什么?
<embed>tag:<embed>标记定义外部(非HTML)内容的容器.(这是一个HTML5标记,在HTML 4中无效,但适用于所有浏览器). <embed height="100" width="100" src="horse.mp3" />
Run Code Online (Sandbox Code Playgroud)
<object>tag:<object>标签还可以为外部(非HTML)内容定义容器.<object height="100" width="100" data="horse.mp3"></object>
Run Code Online (Sandbox Code Playgroud)
<audio>tag:<audio>元素是HTML5元素,在HTML 4中无效,但它适用于所有浏览器.<audio controls="controls" height="100" width="100">
<source src="horse.mp3" type="audio/mp3" />
<source src="horse.ogg" type="audio/ogg" />
<embed height="100" width="100" src="horse.mp3" />
</audio>
Run Code Online (Sandbox Code Playgroud)
请注意基于html5的解决方案的问题,您必须将视频转换为不同的格式.
- 该<audio>元素未验证为HTML 4和XHTML.
- 该<embed>元素未验证为HTML 4和XHTML.
- <embed>元素不能"后退"以显示错误.
你需要使用<object>或 <embed>html标签.
<object data="WindowsBalloon.wav"></object>
Run Code Online (Sandbox Code Playgroud)
<audio src="WindowsBalloon.wav">
<p>Your browser does not support the audio element.</p>
</audio>
Run Code Online (Sandbox Code Playgroud)