请问有什么方法可以直接点击页面上某个元素,播放它的资源?

2012-05-29 13:48:05 +08:00
 yujnln
假设一个情景:
页面上,demo,跟demo绑定的资源是一个demo.mp3格式的资源,我想点击demo之后在当前页面自动播放demo.mp3而不会跳转到新的页面,或者是在新的页面代替当前页面。

就关于这个技巧,是否可以1-2句话帮我解释一下?
如果1-2句话解释不清,那是否可以告知我应该看些什么东西,从那儿入手? 谢谢
2758 次点击
所在节点    问与答
15 条回复
paloalto
2012-05-29 13:50:44 +08:00
没太明白是怎么回事。lZ是说要在demo页面里面嵌套一个mp3播放器吗?点击播放器上的播放按钮就自动播放mp3文件?
VeryCB
2012-05-29 13:56:00 +08:00
html5 multimedia
yujnln
2012-05-29 13:56:24 +08:00
@paloalto
不嵌套mp3播放器,直接点击这个demo字符串就能播放,有点像超链接的感觉
<a href="http://www.v2ex.com/demo.mp3">demo</a>
但是像上面的做法会把当前页面代替成http://www.v2ex.com/demo.mp3这个页面。貌似现在浏览器应该都支持直接输入MP3链接自动播放吧(至少我用chrome是这样)
reus
2012-05-29 13:57:35 +08:00
用js
VeryCB
2012-05-29 13:59:13 +08:00
<audio controls="controls">
  <source src="song.ogg" type="audio/ogg" />
  <source src="song.mp3" type="audio/mpeg" />
</audio>

可参考http://www.w3schools.com/html5/html5_audio.asp
yujnln
2012-05-29 14:05:43 +08:00
@VeryCB
感谢,不过我的意思是不需要出现播放器,直接用户点击一下,在当前页面把声音播放出来就完了。
这个是不是就要用到 @reus 说的js?
maikcn
2012-05-29 14:11:30 +08:00
页面隐藏一个绑定该资源的播放器
a link通过javascript调用播放器的播放功能
VeryCB
2012-05-29 14:24:01 +08:00
@yujnln 嗯…可以把播放器先隐藏,比如给它加一个hidden的class,用CSS把display设为none,然后用js给a绑定一个click事件,点击时remove这个class使其显示
farley
2012-05-29 14:25:03 +08:00
zern
2012-05-29 14:26:25 +08:00
js 插入 flash
yujnln
2012-05-29 14:33:22 +08:00
@VeryCB
谢谢,我先按照你说的尝试一下~
Keinez
2012-05-29 14:34:22 +08:00
@VeryCB 看到display隐藏,其实可以用CSS隐藏播放器的……具体语句如下:

position: absolute; opacity: 0; filter:Alpha(opacity=0);
作用是使其浮在页面上并使之透明。
mkeith
2012-05-29 14:39:37 +08:00
楼主的意思是可控制的背景音乐是吧?
yujnln
2012-05-29 14:43:40 +08:00
谢谢 @all 简单地实现了一下

<span onclick="Play('http://f3.xiami.net/56606/376160/01%201769459428_1325529.mp3')">レイン</span>
<span onclick="Play('http://f3.xiami.net/57295/363096/01%201769312351_1004828.mp3')">英雄</span>

<audio id='sound' hidden="hidden" autoplay='autoplay'> </audio>
<script>
function Play(url)
{
document.getElementById('sound').src = url;
}
</script>
yujnln
2012-05-29 14:48:50 +08:00
@mkeith
其实我的需求是收集一份words list,然后可以让我单击这个word迅速发音,这样可以最快地把拼写和发音结合起来,不需要例句,音标,中文解释等等。就一张页面,包含自己所学过的所有单词。
而这点,我至今没有发现那家网站有,所以我自己想简单地实现一下用用。
拓词其实已经很接近了,但每次单击一个单词还是会有弹窗,然后再关闭。单词的顺序也是被固定的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/37727

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX