/
smorgasbord.min.js
1 lines (1 loc) · 1.11 KB
/
smorgasbord.min.js
1
$.fn.bord=function(e){function r(e,t){t.pause();t.currentTime=0;e.removeClass("playing")}function i(e,t){$(t).removeAttr("loop");if(e.hasClass("loops")){$(t).attr("loop",true)}t.play();e.addClass("playing")}var t=this;var n=e||{};t.each(function(e){var t=$(this);var s=$(this).get(0);if(!t.attr("id")){var o=t.attr("src").split(".")[0].split("/");o=o[o.length-1];t.attr("id",o)}var u=t.attr("id");t.removeAttr("controls");var a='<div class="smorgas btn s-'+(e+1)+'" id="'+u+'">'+u+"</div>";$(a).appendTo(t.parent()).wrap('<div class="sound-container"></div>');var f=$(".btn#"+u);if(n.loopable){f.parent().append('<input class="toggle-loop" type="checkbox" name="loop">');f.parent().find("input").on("change",function(){f.toggleClass("loops")})}f.on("click",function(e){if($(this).hasClass("playing")){r($(this),s)}else{i($(this),s)}});s.addEventListener("canplaythrough",function(){$("div#"+$(this).attr("id")).addClass("playable")});s.addEventListener("ended",function(){$("div#"+$(this).attr("id")).removeClass("playing")})});if(n.keyboard){window.onkeydown=function(e){var t=e.which;if(t<58&&t>47){$(".btn.s-"+(t-48)).trigger("click")}}}}