js如何实现鼠标滑过超链发出声音,但是如何隐藏音乐界面,
在链接上加入属性onmousemove="openplay(this);"然后加入以下JS代码<scriptlanguage="javascript">varflag=0...
在链接上加入属性 onmousemove="openplay(this);" 然后加入以下JS代码<script language="javascript"> var flag = 0;function openplay( ) { var em = document.createElement("embed"); em.autostart="1" ;em.src="sm.mp3"; //你的声音地址document.documentElement.appendChild(em); }</script>可以实现鼠标经过有声音了,但是页面底部出现很多音乐框,音乐响一次就出一个,代码有问题啊,如何写能隐藏这些
展开
3个回答
展开全部
问题根源是你的写法不符合规范:
从截图来看,你的浏览器是支持HTML5的,也就是说你可以直接在页面写<audio>标签来播放音频文件,无需创建<embed>标签。<audio>标签有个controls属性,不写的话,是不会出现音乐框的,也就是说能听到声音但在界面是不可见的。示例代码如下:
function openplay() {
var audio = document.createElement('audio');
var body = document.body;
audio.src = "sm.mp3"; //你的声音地址
audio.autoplay = true;
body.appendChild(audio);
audio.addEventListener('ended', function() {
body.removeChild(audio); // 播放完毕后从HTML中删除该音频
}, false);
}
展开全部
代码这样改应该没错
<script language="javascript">
var flag = 0;
var em = document.createElement("embed");
em.autostart="1" ;
em.src="sm.mp3"; //你的声音地址
document.documentElement.appendChild(em);
function openplay( ) {
em.Play();
}
</script>
把元素的初始化放到方法外面,播放方法在鼠标经过事件中
望采纳
<script language="javascript">
var flag = 0;
var em = document.createElement("embed");
em.autostart="1" ;
em.src="sm.mp3"; //你的声音地址
document.documentElement.appendChild(em);
function openplay( ) {
em.Play();
}
</script>
把元素的初始化放到方法外面,播放方法在鼠标经过事件中
望采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
徒度过志谝一致叛
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询