Difference between revisions of "Widget:Syllable page audio"
Mscottmoore (talk | contribs) (Testing) |
Mscottmoore (talk | contribs) (testing) |
||
Line 41: | Line 41: | ||
var $audioDiv = $('#audioContainer'); | var $audioDiv = $('#audioContainer'); | ||
$audioDiv.empty(); | $audioDiv.empty(); | ||
+ | |||
for (var i = 0; i < tones.length; i++) { | for (var i = 0; i < tones.length; i++) { | ||
var soundUrl = 'http://resources.allsetlearning.com/pronwiki/resources/pinyin-audio/' + $('#syllable').text() + tones.charAt(i) + '.mp3'; | var soundUrl = 'http://resources.allsetlearning.com/pronwiki/resources/pinyin-audio/' + $('#syllable').text() + tones.charAt(i) + '.mp3'; | ||
Line 46: | Line 47: | ||
soundUrl = soundUrl.substr(0, soundUrl.indexOf('.C3.BC')) + 'u%CC%88' + soundUrl.substr(soundUrl.indexOf('.C3.BC') + 6, soundUrl.length); | soundUrl = soundUrl.substr(0, soundUrl.indexOf('.C3.BC')) + 'u%CC%88' + soundUrl.substr(soundUrl.indexOf('.C3.BC') + 6, soundUrl.length); | ||
}; | }; | ||
+ | console.log(soundUrl); | ||
$audioDiv.append('<audio src="' + soundUrl + '" type="audio/mpeg"></audio>'); | $audioDiv.append('<audio src="' + soundUrl + '" type="audio/mpeg"></audio>'); | ||
}; | }; | ||
− | for (var i = 0; i < | + | |
+ | for (var i = 0; i < tones.length; i++) { | ||
$audioDiv.children().get(i).addEventListener('ended', audioEndedListener); | $audioDiv.children().get(i).addEventListener('ended', audioEndedListener); | ||
$audioDiv.children().get(i).addEventListener('canplay', audioCanPlayListener); | $audioDiv.children().get(i).addEventListener('canplay', audioCanPlayListener); | ||
}; | }; | ||
+ | |||
$audioDiv.children().get(0).pause(); | $audioDiv.children().get(0).pause(); | ||
$audioDiv.children().get(0).load(); | $audioDiv.children().get(0).load(); |
Revision as of 03:24, 11 June 2015
<style> .audio-container { display:none; } .play-icon { fill:gray; cursor:pointer; } .play-icon.loading-audio { cursor:wait; } .play-icon.playing-audio { fill:black; } </style>
<svg id="playIcon" class="play-icon" fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg">
<path d="M0 0h24v24H0z" fill="none"/> <path d="M10 16.5l6-4.5-6-4.5v9zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/>
</svg>
<script> var audioEndedListener = function() { var $audioDiv = $('.pinyin-table-audio-container'); if ($audioDiv.children().length>1) { $audioDiv.children().get(1).play(); } $(this).remove(); if ($audioDiv.children().length>1) { $audioDiv.children().get(1).pause(); $audioDiv.children().get(1).load(); } else { $('.playing-audio').removeClass('playing-audio'); } };
var audioCanPlayListener = function() { if (this===$('.pinyin-table-audio-container audio:last-child').get(0)) { console.log('Removing loading-audio class'); $('.pinyin-table').removeClass('loading-audio'); } };
$(document).ready(function() { $('#playIcon').click(function() { var tones = '1234'; var $audioDiv = $('#audioContainer'); $audioDiv.empty();
for (var i = 0; i < tones.length; i++) { var soundUrl = 'http://resources.allsetlearning.com/pronwiki/resources/pinyin-audio/' + $('#syllable').text() + tones.charAt(i) + '.mp3'; if (soundUrl.indexOf('.C3.BC') !== -1) { soundUrl = soundUrl.substr(0, soundUrl.indexOf('.C3.BC')) + 'u%CC%88' + soundUrl.substr(soundUrl.indexOf('.C3.BC') + 6, soundUrl.length); }; console.log(soundUrl); $audioDiv.append('<audio src="' + soundUrl + '" type="audio/mpeg"></audio>'); };
for (var i = 0; i < tones.length; i++) { $audioDiv.children().get(i).addEventListener('ended', audioEndedListener); $audioDiv.children().get(i).addEventListener('canplay', audioCanPlayListener); };
$audioDiv.children().get(0).pause(); $audioDiv.children().get(0).load(); $audioDiv.children().get(0).play(); $(this).addClass('loading-audio'); $(this).addClass('playing-audio'); $audioDiv.children().get(1).pause(); $audioDiv.children().get(1).load(); }); }); </script>