Javascript 单击图像播放声音PHONEGAP
我正在单击图像以调用Javascript 单击图像播放声音PHONEGAP,javascript,android,image,cordova,onclick,Javascript,Android,Image,Cordova,Onclick,我正在单击图像以调用playAudio()。我正在使用phonegap来实现这一点 这是我的功能 <script type="text/javascript" charset="utf-8"> // Audio player // var my_media = null; // Play audio // function playAudio(src) {
playAudio()
。我正在使用phonegap来实现这一点
这是我的功能
<script type="text/javascript" charset="utf-8">
// Audio player
//
var my_media = null;
// Play audio
//
function playAudio(src) {
if (my_media == null) {
// Create Media object from src
my_media = new Media(src, onSuccess, onError);
} // else play current audio
// Play audio
my_media.play();
}
// onSuccess Callback
//
function onSuccess() {
console.log("playAudio():Audio Success");
}
// onError Callback
//
function onError(error) {
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
}
</script>
//音频播放器
//
var my_media=null;
//播放音频
//
功能播放音频(src){
if(my_media==null){
//从src创建媒体对象
my_media=新媒体(src、onSuccess、onError);
}//否则播放当前音频
//播放音频
我的媒体播放();
}
//onSuccess回调
//
函数onSuccess(){
log(“playAudio():音频成功”);
}
//错误回调
//
函数onError(错误){
警报('code:'+error.code+'\n'+
'消息:'+error.message+'\n');
}
这是我的照片
<input type="image" id="myimage" src="numb/equal.png" style="height:100px;width:100px;margin-top:0px" onclick="playAudio('/android_asset/www/Mobile/sound/'+ abc +'.mp3');"/>
单击此图像时,应播放相应的mp3。但在我的控制台中,我得到了“媒体未定义”
我怎样才能解决这个问题 我不会这样做的。使用HTML5,您可以非常轻松地播放音频文件。让您的javascript创建所描述的元素并设置autoplay属性。如果您使用的是Phoengap/Cordova,则不应在mp3的路径中包含
/android\u asset/www/
。您可以将该/android\u asset/www/
文件夹视为“context root”-所有相关URL都会自动将此附加到它们
所以只需将onclick=“playaudo('/android_asset/www/Mobile/sound/'+abc+'.mp3');”
更改为
onclick=“playAudio('./Mobile/sound/'+abc+'.mp3');”
它应该能找到正确的音频路径。这不应该是新的吗?我也用html5中的音频标签进行了测试,在浏览器中效果很好,但在手机中没有。我也用html5中的音频标签进行了测试,在浏览器中工作得很好,但在手机中却不行。我很确定audio
标记在cordova/phonegap项目中不起作用,因为cordova使用的本机web视图不支持某些/许多HTML5元素,我很确定audio就是其中之一。也许现在Android webivew使用Chromium,我们很快就会看到音频标签工作,但考虑到Webview团队的历史,我不会指望它。