4 if (typeof L
== "undefined")
5 mejsloader
= L
= {gs
:null,plug
:{},css
:{},init
:null,c
:0,cssload
:null};
7 L
.cssload = function (f
){
8 if (typeof L
.css
[f
]=="undefined"){
10 var stylesheet
= document
.createElement('link');
12 stylesheet
.rel
= 'stylesheet';
13 stylesheet
.type
= 'text/css';
14 document
.getElementsByTagName('head')[0].appendChild(stylesheet
);
18 if (!(L
.gs
===true)) return;
20 jQuery("audio.mejs,video.mejs").not('.done,.mejs__player').each(function (){
21 var me
= jQuery(this).addClass('done');
23 if (!(id
= me
.attr('id'))){
24 id
= "mejs-"+(me
.attr('data-id'))+"-"+(L
.c
++);
27 var opt
= {options
: {}, plugins
: {}, css
: []}, i
, v
;
29 if (v
= me
.attr('data-mejs'+i
)) opt
[i
] = jQuery
.parseJSON(v
);
31 function runthisplayer(){
33 for (var c
in opt
.css
){
34 L
.cssload(opt
.css
[c
]);
36 for (var p
in opt
.plugins
){
38 if (typeof L
.plug
[p
]=="undefined"){
41 jQuery
.getScript(opt
.plugins
[p
], function (){
46 // this plugin is loading
47 else if (L
.plug
[p
]==false){
52 jQuery('#'+id
).mediaelementplayer(jQuery
.extend(opt
.options
, {
53 "success": function (media
, node
){
54 function togglePlayingState(){
55 var inner
= jQuery(media
).closest('.mejs__inner');
57 inner
.removeClass('paused').removeClass('pausing').addClass('playing');
60 inner
.addClass('pausing');
61 setTimeout(function(){inner
.filter('.pausing').removeClass('playing').removeClass('pausing').addClass('paused');},100);
65 media
.addEventListener('play', togglePlayingState
, false);
66 media
.addEventListener('playing', togglePlayingState
, false);
67 media
.addEventListener('pause', togglePlayingState
, false);
68 media
.addEventListener('paused', togglePlayingState
, false);
69 if (me
.attr('autoplay')) media
.play();
81 if (typeof mejscss
!== "undefined"){
84 L
.gs
= jQuery
.getScript(mejspath
,function(){
86 L
.init(); // init immediate des premiers players dans la page
87 jQuery(L
.init
); // init exhaustive de tous les players
88 onAjaxLoad(L
.init
); // init lors d'un load ajax