【发布时间】:2013-12-05 01:13:11
【问题描述】:
编辑: 我在 Wordpress 端发布了这个,但一些管理员认为它放在这里,因为他们说这是客户端问题,但我不认为这是因为他的脚本按原样工作(在非 wordpress 站点中)但只抛出 DOM 异常11 错误,当脚本用于 Wordpress 站点并且仅在某些浏览器上时。完全相同的脚本在 Wordpress 下工作,但仅在 Chrome 上工作。
我采用了一个脚本,当锚链接悬停时播放音频剪辑并将其转换为 Wordpress 插件。
它可以正常工作,但只能在 Chrome (Mac) 上运行。在 Firefox 或 Safari(当前版本)上,脚本会引发 DOM 错误。
这是错误:
INVALID_STATE_ERR:DOM 异常 11:尝试使用不可用或不再可用的对象。
产生错误的行是:html5audio.currentTime=0
以下脚本在我在非 Wordpress 网站中遇到问题的浏览器上运行良好。 http://www.javascriptkit.com/script/script2/soundlink.shtml#current
我已尝试研究该问题并使用了一些修复方法,但我无法开始工作。
var html5_audiotypes={
"mp3": "audio/mpeg",
"mp4": "audio/mp4",
"ogg": "audio/ogg",
"wav": "audio/wav"
}
function audio(sound){
var html5audio=document.createElement('audio')
if (html5audio.canPlayType){ //check support for HTML5 audio
for (var i=0; i<arguments.length; i++){
var sourceel=document.createElement('source')
sourceel.setAttribute('src', arguments[i])
if (arguments[i].match(/\.(\w+)$/i))
sourceel.setAttribute('type', html5_audiotypes[RegExp.$1])
html5audio.appendChild(sourceel)
}
html5audio.load()
html5audio.playclip=function(){
html5audio.pause()
html5audio.currentTime=0
html5audio.play()
}
return html5audio
}
}
【问题讨论】:
-
以上帖子与我的问题无关。我不是在寻找如何将音频设置为位置。
标签: javascript html audio