window.AudioContext = window.AudioContext || window.webkitAudioContext || window.mozAudioContext || window.msAudioContext; try { var context = new window.AudioContext(); var source = null; var audioBuffer = null; function stopSound() { if ( source ) { source.stop( 0 ); //立即停止 } } function playSound() { source = context.createBufferSource(); source.buffer = audioBuffer; source.loop = true; //循环播放 source.connect( context.destination ); source.start( 0 ); //立即播放 } function initSound( arrayBuffer ) { context.decodeAudioData( arrayBuffer, function( buffer ) { //解码成功时的回调函数 audioBuffer = buffer; playSound(); }, function( e ) { //解码出错时的回调函数 console.log( 'Error decoding file', e ); } ); } function loadAudioFile( url ) { var xhr = new XMLHttpRequest(); //通过XHR下载音频文件 xhr.open( 'GET', url, true ); xhr.responseType = 'arraybuffer'; xhr.onload = function( e ) { //下载完成 initSound( this.response ); }; xhr.send(); } loadAudioFile( '../Content/public/mp3/music2.mp3' ); $( "#stop" ).click( function() { stopSound(); } ); } catch ( e ) { console.log( '!Your browser does not support AudioContext' ); }