将javascript音频移动到jquery

时间:2013-03-16 14:15:44

标签: javascript jquery html audio

这是我在论坛上的第一篇文章。 我正在建立一个英语/泰语语言课程网站,其中包含许多英语和泰语演讲的音频文件。我使用鼠标悬停/按钮javascript功能进行了单个网页概念验证 http://www.javascriptkit.com/script/script2/soundlink.shtml 对于一些mod和一些内联j,这个工作正常。

$(document).ready(function() { 
  var html5_audiotypes = { 
  "mp3": "audio/mpeg",
  "ogg": "audio/ogg",
     };      
function createsoundbite(sound) {
  "use strict";
  var html5audio = document.createElement('audio');
  if (html5audio.canPlayType){
   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;
    }
    else{
    return {playclip:function(){throw new Error("Your browser doesn't support      HTML5 audio unfortunately")}};
    }
  }   
  var cn402=createsoundbite("audio/cn402.ogg", "audio/cn402.mp3");   
  var ry402=createsoundbite("audio/ry402.ogg", "audio/ry402.mp3");     
  var cn403=createsoundbite("audio/cn403.ogg", "audio/cn403.mp3");      
  var ry403=createsoundbite("audio/ry403.ogg", "audio/ry403.mp3");      
  var cn404=createsoundbite("audio/cn404.ogg", "audio/cn404.mp3");      
  var ry404=createsoundbite("audio/ry404.ogg", "audio/ry404.mp3");     
});

javascript代码由一行html代码调用,如下所示:

    <a href="#current" class= "rollover" onclick="ry402.playclip()"></a>Please don't swim by yourself</span>

我想将此函数及其相关变量合并到jquery中。以便从html中删除所有js代码。第一步,只是让jquery代码工作已经证明对我来说有点问题。我已经尝试将js音频代码包含在文档就绪函数中。如上所示,但这不起作用。任何帮助将非常感激。

1 个答案:

答案 0 :(得分:3)

我不确定我是否帮助您,但您可以非常轻松地从指定链接中删除javascript代码:

$('.rollover').click(function(){

ry402.playclip();

});

我们来看看:http://api.jquery.com/click/