begin process at 2012 05 28 10:32:11
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > HTML 5 MEDIA PLAYER

HTML 5 MEDIA PLAYER


 Information sur la source

Note :
10 / 10 - par 3 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Classé sous :player, video html5, html 5, ogg webm, balise video Niveau :Débutant Date de création :02/11/2009 Date de mise à jour :27/06/2011 14:23:18 Vu / téléchargé :7 665 / 585

Auteur : kazma

Ecrire un message privé
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
il s'agit d'un player fonctionnant avec la balise <video> du html 5 et utilisant ses méthodes et propriétés associe au Dhtml et css les possibilités son le réglage du son, le déplacement et le redimensionnement de la fenêtre  play ,pause ,mute ...etc

fonctionne avec firefox opera ie9 et safari.

pour la demo c'est a cette adresse http://scriptevol.toile-libre.org/video5/video5.ht ml


Source

  • tbplein=new Array()
  • var kplayer={
  • px:0,
  • py:0,
  • ggt:0,
  • ggs:0,
  • cons:null,
  • loto:false,
  • divgeneral:null,
  • divhd:null,
  • divivi:null,
  • divgg:null,
  • divdefile:null,
  • divcontrole:null,
  • divvol:null,
  • scr:function(azer,evt){
  • typeof this.prp == 'undefined' ? this.prp=false : null;
  • var el=kplayer.divivi;
  • if(arguments.length==1){
  • clearInterval(kplayer.ggs);
  • document.documentElement.removeEventListener("mousedown", kdiver.selecte, false);
  • document.documentElement.removeEventListener("mousemove", kdiver.souris, false);
  • document.documentElement.removeAttribute("onmouseup");
  • if(azer=='rd'){
  • this.prp=false;
  • }
  • if(azer=='defile' && this.prp==true){
  • this.prp=false;
  • el.play();
  • kplayer.ggt=setInterval(kplayer.def,50);
  • }
  • }
  • if(arguments.length==2){
  • var dde=(navigator.vendor) ? document.body : document.documentElement;
  • if(azer=='rd' && this.prp==true){
  • return false;
  • }
  • document.documentElement.addEventListener("mousemove", kdiver.souris, false);
  • document.documentElement.addEventListener("mousedown", kdiver.selecte, false);
  • document.documentElement.setAttribute("onmouseup", "kplayer.scr('"+azer+"')");
  • kdiver.setX=evt.clientX + dde.scrollLeft;
  • kdiver.setY=evt.clientY + dde.scrollTop;
  • kplayer.px=kdiver.setX;
  • kplayer.py=kdiver.setY;
  • if(azer=='rd'){
  • this.prp=true;
  • kplayer.ggs=setInterval('kplayer.redim("'+azer+'")',10);
  • }
  • if(azer=='vol' || azer=='defile'){
  • kplayer.cons=(azer=='vol' ? kplayer.divvol : kplayer.divdefile);
  • if(azer=='defile' && !el.paused){
  • el.pause();
  • this.prp=true;
  • }
  • kplayer.ggs=setInterval('kplayer.sps("'+azer+'")',10);
  • }
  • }
  • },
  • sps:function(azer){
  • var el=kplayer.divivi;
  • var ds1 =kplayer.cons;
  • var rcsb =ds1.getElementsByTagName('div')[0];
  • if((parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left')))+kdiver.setX-kplayer.px<0){
  • rcsb.style.marginLeft=0+'px';
  • if(azer=='vol'){
  • el.volume=0;
  • }
  • else{
  • el.currentTime=0;
  • }
  • kplayer.scr(azer);
  • return false;
  • }
  • if((parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left')))+rcsb.offsetWidth+kdiver.setX-kplayer.px>ds1.offsetWidth){
  • rcsb.style.marginLeft=ds1.offsetWidth-rcsb.offsetWidth+'px';
  • if(azer=='vol'){
  • el.volume=1;
  • }
  • else{
  • el.currentTime=el.duration;
  • }
  • kplayer.scr(azer);
  • return false;
  • }
  • rcsb.style.marginLeft=(parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left')))+(kdiver.setX-kplayer.px)+'px';
  • if(azer=='vol'){
  • el.volume=parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left'))/(kplayer.divvol.offsetWidth-rcsb.offsetWidth);
  • kplayer.divvol.getElementsByTagName('span')[0].style.width=rcsb.style.marginLeft;
  • }
  • else{
  • el.currentTime= parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left'))*(el.duration/(kplayer.divdefile.offsetWidth-rcsb.offsetWidth));
  • kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(kplayer.divdefile.getElementsByTagName('div')[0].style.marginLeft)+5+'px';
  • kplayer.tpm();
  • }
  • kplayer.px=kdiver.setX;
  • },
  • odevi:function(choix){
  • var ell=kplayer.divivi;
  • if((choix=="pla" && ell.paused)){
  • ell.play();
  • kplayer.imvoil();
  • kplayer.ggt=setInterval(kplayer.def,50);
  • }
  • if(choix=="stp" && ell.currentTime){
  • clearInterval(kplayer.ggt);
  • ell.currentTime=0;
  • ell.pause();
  • kplayer.tpm('zero');
  • kplayer.divdefile.getElementsByTagName('div')[0].style.marginLeft=0+'px';
  • kplayer.divdefile.getElementsByTagName('div')[3].style.width=5+'px';
  • kplayer.imvoil();
  • }
  • if(choix=="pau"){
  • ell.pause();
  • kplayer.imvoil();
  • }
  • if(choix=="pos"){
  • ell.currentTime=0;
  • kplayer.tpm('zero');
  • if(ell.paused){
  • kplayer.divdefile.getElementsByTagName('div')[0].style.marginLeft=0+'px';
  • kplayer.divdefile.getElementsByTagName('div')[3].style.width=0+'px';
  • kplayer.imvoil();
  • }
  • }
  • if(choix=="mut"){
  • if(ell.muted){
  • kplayer.divvol.getElementsByTagName('img')[0].setAttribute('src','res/mute.png');
  • ell.muted=false;
  • }
  • else{
  • kplayer.divvol.getElementsByTagName('img')[0].setAttribute('src','res/mute2.png');
  • ell.muted=true;
  • }
  • }
  • },
  • redim:function(){
  • var dgtgn=kplayer.divdefile.getElementsByTagName('*');
  • var dico=kplayer.divgeneral;
  • if(arguments[0]=='plus'){
  • var dde=document.documentElement;
  • var ddl=(navigator.vendor) ? document.body : document.documentElement;
  • var deca=dde.clientWidth-parseInt(dico.offsetWidth);
  • var decy=dde.clientHeight-parseInt(dico.offsetHeight);
  • tbplein.push(dico.offsetTop);
  • tbplein.push(dico.offsetLeft);
  • tbplein.push(deca);
  • tbplein.push(decy);
  • dico.style.top=0+ddl.scrollTop+"px";
  • dico.style.left=0+ddl.scrollLeft+"px";
  • }
  • if(arguments[0]!='plus' && arguments[0]!='moins'){
  • var deca=(kdiver.setX-kplayer.px);
  • var decy=kdiver.setY-kplayer.py;
  • if(tbplein.length!=0){
  • tbplein.pop();
  • tbplein.pop();
  • tbplein.pop();
  • tbplein.pop();
  • }
  • }
  • if(arguments[0]=='moins'){
  • dico.style.top=tbplein[0]+"px";
  • dico.style.left=tbplein[1]+"px";
  • var deca=-(tbplein[2]);
  • var decy=-(tbplein[3]);
  • tbplein.pop();
  • tbplein.pop();
  • tbplein.pop();
  • tbplein.pop();
  • }
  • var el=kplayer.divivi;
  • var barre=kplayer.divdefile.getElementsByTagName('div')[0];
  • var defi=kplayer.divdefile;
  • dico.style.width=dico.offsetWidth+deca+'px';
  • defi.style.width=defi.offsetWidth+deca+'px';
  • el.style.width=el.offsetWidth+deca+'px';
  • el.style.height=el.offsetHeight+decy+'px';
  • kplayer.divgg.style.width=el.style.width;
  • kplayer.divgg.style.height=el.style.height;
  • if(loto==true){
  • kplayer.divdefile.getElementsByTagName('div')[2].style.width=defi.offsetWidth-barre.offsetWidth+'px';
  • }
  • if(loto==false){
  • kplayer.lolo();
  • }
  • if(el.paused){
  • barre.style.marginLeft=el.currentTime/(el.duration/(defi.offsetWidth-barre.offsetWidth))+'px';
  • kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(barre.style.marginLeft)+5+'px';
  • }
  • kplayer.px=kdiver.setX;
  • kplayer.py=kdiver.setY;
  • },
  • def:function(){
  • if(kplayer.divgeneral==null){
  • clearInterval(kplayer.ggt);
  • return false;
  • }
  • var el=kplayer.divivi;
  • var barre=kplayer.divdefile.getElementsByTagName('div')[0];
  • if(el.currentTime && el.readyState>=3){
  • barre.style.marginLeft=el.currentTime/(el.duration/(kplayer.divdefile.offsetWidth-barre.offsetWidth))+'px';
  • kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(barre.style.marginLeft)+5+'px';
  • kplayer.tpm();
  • }
  • if(el.ended){
  • kplayer.odevi('stp');
  • }
  • if(el.paused && el.readyState>=3){
  • clearInterval(kplayer.ggt);
  • }
  • },
  • clvol:function(evt){
  • var rcsb=kplayer.divvol.getElementsByTagName('div')[0];
  • var ell=kplayer.divgeneral;
  • var vovo=kplayer.divvol;
  • var valrs=evt.clientX-(kplayer.divcontrole.offsetLeft+ell.offsetLeft+vovo.offsetLeft)-(rcsb.offsetWidth/2);
  • if(valrs>=0 && valrs<=vovo.offsetLeft){
  • rcsb.style.marginLeft=valrs+'px';
  • kplayer.divvol.getElementsByTagName('span')[0].style.width=rcsb.style.marginLeft;
  • kplayer.divivi.volume=parseInt(rcsb.style.marginLeft)/(vovo.offsetWidth-(rcsb.offsetWidth/2));
  • }
  • },
  • tpm:function(oui){
  • typeof this.total == 'undefined' ? this.total=1 : null;
  • if (arguments.length==1 && oui=='dif'){
  • this.total=(this.total==0 ? 1 : 0);
  • }
  • var dura=(this.total==0 ? kplayer.divivi.currentTime : kplayer.divivi.duration-kplayer.divivi.currentTime);
  • var elem=kplayer.divcontrole.getElementsByTagName('div')[0];
  • if (oui=='zero' || isNaN(dura)) {
  • elem.firstChild.nodeValue='00:00:00';
  • }
  • else{
  • var min = Math.floor(dura / 60);
  • if (min < 10) {
  • min = '0' + min;
  • }
  • var sec = Math.floor(dura % 60);
  • if (sec < 10) {
  • sec = '0' + sec;
  • }
  • elem.firstChild.nodeValue='00:'+min+ ':'+sec;
  • }
  • },
  • imvoil:function(){
  • var ge=kplayer.divgg;
  • var el=kplayer.divivi;
  • if((!el.paused)){
  • kplayer.divcontrole.getElementsByTagName('img')[0].setAttribute('src','res/play2.png');
  • ge.setAttribute('onclick','kplayer.odevi("pau")');
  • }
  • else{
  • kplayer.divcontrole.getElementsByTagName('img')[0].setAttribute('src','res/play.png');
  • ge.style.width=el.style.width;
  • ge.style.height=el.style.height;
  • ge.setAttribute('onclick','kplayer.odevi("pla")');
  • }
  • },
  • pb:function(evt){
  • var ell=kplayer.divivi;
  • var le=kplayer.divgeneral;
  • var rcsb=kplayer.divdefile.getElementsByTagName('div')[0];
  • var rcml=evt.clientX-(le.offsetLeft+ell.offsetLeft)-rcsb.offsetWidth;
  • if(rcml>0){
  • ell.currentTime= rcml*(ell.duration/(kplayer.divdefile.offsetWidth-rcsb.offsetWidth));
  • rcsb.style.marginLeft=rcml+'px';
  • kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(rcsb.style.marginLeft)+5+'px';
  • }
  • },
  • attente:function() {
  • kplayer.divgg.getElementsByTagName('img')[0].style.visibility='visible';
  • return false;
  • },
  • saroule:function() {
  • kplayer.divgg.getElementsByTagName('img')[0].style.visibility='hidden';
  • return false;
  • },
  • changer:function(titre){
  • loto=false;
  • if(kplayer.divgeneral!=null){
  • var le=kplayer.divivi;
  • if(!le.paused){
  • kplayer.odevi('stp');
  • }
  • kplayer.divdefile.getElementsByTagName('div')[2].style.width=0+'px';
  • var version=navigator.userAgent.indexOf('Firefox',0);
  • if(navigator.userAgent.indexOf('Firefox',0)!=-1 && parseInt(navigator.userAgent.substring(version+8,version+9))<4){
  • le.setAttribute('src',titre+'.ogv');
  • }
  • else{
  • var elemensource=le.getElementsByTagName('source');
  • elemensource[0].setAttribute('src',titre+'.webm');
  • elemensource[1].setAttribute('src',titre+'.mp4');
  • elemensource[2].setAttribute('src',titre+'.ogv');
  • elemensource[3].setAttribute('src',titre+'.ogg');
  • }
  • le.load();
  • kplayer.odevi('pla');
  • kplayer.centrage(kplayer.divgeneral);
  • }
  • else{
  • kplayer.initplayer(titre);
  • }
  • },
  • lolo:function(evt){
  • var elem=kplayer.divivi;
  • var dura=elem.duration;
  • if(elem.buffered && elem.buffered.length>0){
  • var charge=elem.buffered.end(0);
  • kplayer.divdefile.getElementsByTagName('div')[2].style.width=(((charge/dura).toFixed(2))*(kplayer.divdefile.offsetWidth-kplayer.divdefile.getElementsByTagName('div')[0].offsetWidth))+'px';
  • if(((charge/dura).toFixed(2))>=0.96){
  • loto=true;
  • }
  • }
  • else{
  • kplayer.divdefile.getElementsByTagName('div')[2].style.width=((elem.loaded/elem.total)*(kplayer.divdefile.offsetWidth-kplayer.divdefile.getElementsByTagName('div')[0].offsetWidth))+'px';
  • if((elem.loaded/elem.total)>=0.96){
  • loto=true;
  • }
  • }
  • },
  • initplayer:function(titre){
  • kplayer.divgeneral=kdiver.creation('div','body','class','divico');
  • var divico=kplayer.divgeneral;
  • kplayer.divhd=kdiver.creation('div',divico,'class','hd','onmousedown','kdiver.sp(event)','onmouseup','kdiver.sp()','ondblclick','kplayer.pleinfin()');
  • var hd=kplayer.divhd;
  • kdiver.creation('div',hd,'class','bouge','onclick','kplayer.vivifin()');
  • kdiver.creation('div',hd,'class','plein','onclick','kplayer.pleinfin()');
  • kdiver.creation('span',hd,'class','ktxt','txt','K player');
  • kplayer.divgg=kdiver.creation('div',divico,'class','gg','onclick','kplayer.odevi("pla")','class','ghh');
  • var version=navigator.userAgent.indexOf('Firefox',0);
  • if(navigator.userAgent.indexOf('Firefox',0)!=-1 && parseInt(navigator.userAgent.substring(version+8,version+9))<4){
  • kplayer.divivi=kdiver.creation('video',kplayer.divgg,'class','vivi','src',titre+'.ogv','oncanplay','kplayer.saroule()','poster','res/kp.png','onwaiting','kplayer.attente()','autobuffer','true','preload','auto','onprogress','kplayer.lolo(event)');
  • }
  • else{
  • kplayer.divivi=kdiver.creation('video',kplayer.divgg,'class','vivi','oncanplay','kplayer.saroule()','poster','res/kp.png','onwaiting','kplayer.attente()','autobuffer','true','preload','auto','onprogress','kplayer.lolo(event)');
  • kdiver.creation('source',kplayer.divivi,'src',titre+'.webm','type','video/webm');
  • kdiver.creation('source',kplayer.divivi,'src',titre+'.mp4','type','video/mp4');
  • kdiver.creation('source',kplayer.divivi,'src',titre+'.ogv','type','video/ogg');
  • kdiver.creation('source',kplayer.divivi,'src',titre+'.ogg','type','video/ogg');
  • }
  • kdiver.creation('img',kplayer.divgg,'class','imwait','src','res/29.gif');
  • kdiver.creation('div',divico,'class','dr');
  • kdiver.creation('div',divico,'class','gc');
  • kplayer.divdefile=kdiver.creation('div',divico,'class','defile');
  • var defile=kplayer.divdefile;
  • kdiver.creation('div',defile,'class','scroll1','onmousedown','kplayer.scr("defile",event)');
  • kdiver.creation('div',defile,'class','clique','onclick','kplayer.pb(event)');
  • kdiver.creation('div',defile,'class','prech');
  • kdiver.creation('div',defile,'class','suis');
  • kplayer.divcontrole=kdiver.creation('div',divico,'class','controle');
  • var controle=kplayer.divcontrole;
  • kdiver.creation('img',controle,'src','res/play.png','onclick','kplayer.odevi("pla")');
  • kdiver.creation('img',controle,'src','res/pause.png','onclick','kplayer.odevi("pau")');
  • kdiver.creation('img',controle,'src','res/stop.png','onclick','kplayer.odevi("stp")');
  • kdiver.creation('img',controle,'src','res/raz.png','onclick','kplayer.odevi("pos")');
  • kdiver.creation('div',controle,'class','tmp','txt','00:00:00','onclick','kplayer.tpm("dif")','onmousedown','kdiver.selecte(event)');
  • kplayer.divvol=kdiver.creation('div',kplayer.divcontrole,'class','vol');
  • var vol=kplayer.divvol;
  • kdiver.creation('img',vol,'class','temu','src','res/mute.png','onclick','kplayer.odevi("mut")');
  • kdiver.creation('span',vol,'class','suivol');
  • kdiver.creation('span',vol,'class','clicvol','onclick','kplayer.clvol(event)');
  • kdiver.creation('div',vol,'class','scrolvol','onmousedown','kplayer.scr("vol",event)');
  • kdiver.creation('div',divico,'class','rd','onmousedown','kplayer.scr("rd",event)');
  • kplayer.zidex(divico);
  • kplayer.odevi('pla');
  • kplayer.centrage(kplayer.divgeneral)
  • },
  • zidex:function(elem){
  • var allElements = document.getElementsByTagName('*');
  • var vaval=0;
  • var vaz=0;
  • for (var i = 0; i< allElements.length; i++){
  • if(allElements[i].parentNode==document.body){
  • vaz =parseInt(navigator.appName.substring(0,5)=="Micro" ? allElements[i].currentStyle.zIndex : getComputedStyle(allElements[i],null).getPropertyValue('z-index'));
  • if(vaz>vaval){
  • vaval=vaz;
  • }
  • }
  • }
  • elem.style.zIndex=vaval+1;
  • },
  • vivifin:function(){
  • kplayer.divivi.pause();
  • kplayer.divivi.removeAttribute("onprogress");
  • kplayer.divgeneral.parentNode.removeChild(kplayer.divgeneral);
  • kplayer.divgeneral=null;
  • if(tbplein.length!=0){
  • tbplein.pop();
  • tbplein.pop();
  • tbplein.pop();
  • tbplein.pop();
  • }
  • },
  • pleinfin:function(){
  • if(tbplein.length==0){
  • kplayer.redim('plus');
  • return false;
  • }
  • if(tbplein.length>=3){
  • kplayer.redim('moins');
  • return false;
  • }
  • },
  • centrage:function(quoi){
  • var dde=document.documentElement;
  • var ddl=(navigator.vendor) ? document.body : document.documentElement;
  • quoi.style.left=((dde.clientWidth-quoi.offsetWidth)/2)+ddl.scrollLeft+'px';
  • quoi.style.top=50+ddl.scrollTop+"px";
  • },
  • }
tbplein=new Array()

var kplayer={
px:0,
py:0,
ggt:0,
ggs:0,
cons:null,
loto:false,
divgeneral:null,
divhd:null,
divivi:null,
divgg:null,
divdefile:null,
divcontrole:null,
divvol:null,

scr:function(azer,evt){

		typeof this.prp == 'undefined' ? this.prp=false : null;

		var el=kplayer.divivi;

		if(arguments.length==1){

			clearInterval(kplayer.ggs);
			document.documentElement.removeEventListener("mousedown", kdiver.selecte, false);
			document.documentElement.removeEventListener("mousemove", kdiver.souris, false);
			document.documentElement.removeAttribute("onmouseup");

			if(azer=='rd'){
				this.prp=false;
			}
			if(azer=='defile' && this.prp==true){
				this.prp=false;
				el.play();
				kplayer.ggt=setInterval(kplayer.def,50);
			}
		}
		if(arguments.length==2){
			var dde=(navigator.vendor) ? document.body : document.documentElement;
			if(azer=='rd' && this.prp==true){
				return false;
			}

			document.documentElement.addEventListener("mousemove", kdiver.souris, false);
			document.documentElement.addEventListener("mousedown", kdiver.selecte, false);
			document.documentElement.setAttribute("onmouseup", "kplayer.scr('"+azer+"')");

			kdiver.setX=evt.clientX + dde.scrollLeft;
			kdiver.setY=evt.clientY + dde.scrollTop;
			kplayer.px=kdiver.setX;
			kplayer.py=kdiver.setY;
			if(azer=='rd'){
				this.prp=true;
				kplayer.ggs=setInterval('kplayer.redim("'+azer+'")',10);
			}
			if(azer=='vol' || azer=='defile'){

				kplayer.cons=(azer=='vol' ? kplayer.divvol : kplayer.divdefile);

				if(azer=='defile' && !el.paused){
					el.pause();
					this.prp=true;
				}
				kplayer.ggs=setInterval('kplayer.sps("'+azer+'")',10);
			}
		}
	},

sps:function(azer){

		var el=kplayer.divivi;
		var ds1 =kplayer.cons;
		var rcsb =ds1.getElementsByTagName('div')[0];

		if((parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left')))+kdiver.setX-kplayer.px<0){
			rcsb.style.marginLeft=0+'px';
			if(azer=='vol'){
				el.volume=0;
			}
			else{
				el.currentTime=0;
			}
			kplayer.scr(azer);
			return false;
		}

		if((parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left')))+rcsb.offsetWidth+kdiver.setX-kplayer.px>ds1.offsetWidth){
			rcsb.style.marginLeft=ds1.offsetWidth-rcsb.offsetWidth+'px';
			if(azer=='vol'){
				el.volume=1;
			}
			else{
				el.currentTime=el.duration;
			}
			kplayer.scr(azer);
			return false;
		}

		rcsb.style.marginLeft=(parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left')))+(kdiver.setX-kplayer.px)+'px';
		if(azer=='vol'){
			el.volume=parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left'))/(kplayer.divvol.offsetWidth-rcsb.offsetWidth);
			kplayer.divvol.getElementsByTagName('span')[0].style.width=rcsb.style.marginLeft;
		}
		else{
			el.currentTime= parseInt(getComputedStyle(rcsb, null).getPropertyValue('margin-left'))*(el.duration/(kplayer.divdefile.offsetWidth-rcsb.offsetWidth));
			kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(kplayer.divdefile.getElementsByTagName('div')[0].style.marginLeft)+5+'px';
			kplayer.tpm();
		}
		kplayer.px=kdiver.setX;
	},

odevi:function(choix){

		var ell=kplayer.divivi;

		if((choix=="pla" && ell.paused)){
			ell.play();
			kplayer.imvoil();
			kplayer.ggt=setInterval(kplayer.def,50);
		}
		if(choix=="stp" && ell.currentTime){
			clearInterval(kplayer.ggt);
			ell.currentTime=0;
			ell.pause();
			kplayer.tpm('zero');
			kplayer.divdefile.getElementsByTagName('div')[0].style.marginLeft=0+'px';
			kplayer.divdefile.getElementsByTagName('div')[3].style.width=5+'px';
			kplayer.imvoil();

		}

		if(choix=="pau"){
			ell.pause();
			kplayer.imvoil();
		}

		if(choix=="pos"){
			ell.currentTime=0;
			kplayer.tpm('zero');
			if(ell.paused){
				kplayer.divdefile.getElementsByTagName('div')[0].style.marginLeft=0+'px';
				kplayer.divdefile.getElementsByTagName('div')[3].style.width=0+'px';
				kplayer.imvoil();
			}
		}
		if(choix=="mut"){
			if(ell.muted){
				kplayer.divvol.getElementsByTagName('img')[0].setAttribute('src','res/mute.png');
				ell.muted=false;
			}
			else{
				kplayer.divvol.getElementsByTagName('img')[0].setAttribute('src','res/mute2.png');
				ell.muted=true;
			}
		}
	},

redim:function(){

		var dgtgn=kplayer.divdefile.getElementsByTagName('*');
		var dico=kplayer.divgeneral;
		if(arguments[0]=='plus'){
			var dde=document.documentElement;
			var ddl=(navigator.vendor) ? document.body : document.documentElement;
			var deca=dde.clientWidth-parseInt(dico.offsetWidth);
			var decy=dde.clientHeight-parseInt(dico.offsetHeight);
			tbplein.push(dico.offsetTop);
			tbplein.push(dico.offsetLeft);
			tbplein.push(deca);
			tbplein.push(decy);
			dico.style.top=0+ddl.scrollTop+"px";
			dico.style.left=0+ddl.scrollLeft+"px";
		}
		if(arguments[0]!='plus' && arguments[0]!='moins'){
			var deca=(kdiver.setX-kplayer.px);
			var decy=kdiver.setY-kplayer.py;
			if(tbplein.length!=0){
				tbplein.pop();
				tbplein.pop();
				tbplein.pop();
				tbplein.pop();
			}
		}
		if(arguments[0]=='moins'){
			dico.style.top=tbplein[0]+"px";
			dico.style.left=tbplein[1]+"px";
			var deca=-(tbplein[2]);
			var decy=-(tbplein[3]);
			tbplein.pop();
			tbplein.pop();
			tbplein.pop();
			tbplein.pop();
		}
		var el=kplayer.divivi;
		var barre=kplayer.divdefile.getElementsByTagName('div')[0];
		var defi=kplayer.divdefile;
		dico.style.width=dico.offsetWidth+deca+'px';
		defi.style.width=defi.offsetWidth+deca+'px';
		el.style.width=el.offsetWidth+deca+'px';
		el.style.height=el.offsetHeight+decy+'px';
		kplayer.divgg.style.width=el.style.width;
		kplayer.divgg.style.height=el.style.height;
		if(loto==true){
			kplayer.divdefile.getElementsByTagName('div')[2].style.width=defi.offsetWidth-barre.offsetWidth+'px';
		}
		if(loto==false){
			kplayer.lolo();
		}
		if(el.paused){
			barre.style.marginLeft=el.currentTime/(el.duration/(defi.offsetWidth-barre.offsetWidth))+'px';
			kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(barre.style.marginLeft)+5+'px';
		}
		kplayer.px=kdiver.setX;
		kplayer.py=kdiver.setY;
	},

def:function(){
		if(kplayer.divgeneral==null){
			clearInterval(kplayer.ggt);
			return false;
		}
		var el=kplayer.divivi;
		var barre=kplayer.divdefile.getElementsByTagName('div')[0];
		if(el.currentTime && el.readyState>=3){
			barre.style.marginLeft=el.currentTime/(el.duration/(kplayer.divdefile.offsetWidth-barre.offsetWidth))+'px';
			kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(barre.style.marginLeft)+5+'px';
			kplayer.tpm();
		}

		if(el.ended){
			kplayer.odevi('stp');
		}
		if(el.paused && el.readyState>=3){
			clearInterval(kplayer.ggt);
		}
	},

clvol:function(evt){
		var rcsb=kplayer.divvol.getElementsByTagName('div')[0];
		var ell=kplayer.divgeneral;
		var vovo=kplayer.divvol;
		var valrs=evt.clientX-(kplayer.divcontrole.offsetLeft+ell.offsetLeft+vovo.offsetLeft)-(rcsb.offsetWidth/2);
		if(valrs>=0 && valrs<=vovo.offsetLeft){
			rcsb.style.marginLeft=valrs+'px';
			kplayer.divvol.getElementsByTagName('span')[0].style.width=rcsb.style.marginLeft;
			kplayer.divivi.volume=parseInt(rcsb.style.marginLeft)/(vovo.offsetWidth-(rcsb.offsetWidth/2));
		}
	},

tpm:function(oui){

		typeof this.total == 'undefined' ? this.total=1 : null;

		if (arguments.length==1 && oui=='dif'){
			this.total=(this.total==0 ? 1 : 0);
		}
		var dura=(this.total==0 ? kplayer.divivi.currentTime : kplayer.divivi.duration-kplayer.divivi.currentTime);

		var elem=kplayer.divcontrole.getElementsByTagName('div')[0];

		if (oui=='zero' || isNaN(dura)) {
			elem.firstChild.nodeValue='00:00:00';
		}
		else{

			var min = Math.floor(dura / 60);
			if (min < 10) {
				min = '0' + min;
			}
			var sec = Math.floor(dura % 60);
			if (sec < 10) {
				sec = '0' + sec;
			}
			elem.firstChild.nodeValue='00:'+min+ ':'+sec;
		}
	},

imvoil:function(){
		var ge=kplayer.divgg;
		var el=kplayer.divivi;
		if((!el.paused)){
			kplayer.divcontrole.getElementsByTagName('img')[0].setAttribute('src','res/play2.png');
			ge.setAttribute('onclick','kplayer.odevi("pau")');
		}
		else{
			kplayer.divcontrole.getElementsByTagName('img')[0].setAttribute('src','res/play.png');
			ge.style.width=el.style.width;
			ge.style.height=el.style.height;
			ge.setAttribute('onclick','kplayer.odevi("pla")');
		}
	},

pb:function(evt){
		var ell=kplayer.divivi;
		var le=kplayer.divgeneral;
		var rcsb=kplayer.divdefile.getElementsByTagName('div')[0];
		var rcml=evt.clientX-(le.offsetLeft+ell.offsetLeft)-rcsb.offsetWidth;
		if(rcml>0){
			ell.currentTime= rcml*(ell.duration/(kplayer.divdefile.offsetWidth-rcsb.offsetWidth));
			rcsb.style.marginLeft=rcml+'px';
			kplayer.divdefile.getElementsByTagName('div')[3].style.width=parseInt(rcsb.style.marginLeft)+5+'px';
		}
	},

attente:function() {
		kplayer.divgg.getElementsByTagName('img')[0].style.visibility='visible';
		return false;
	},
	
saroule:function() {
		kplayer.divgg.getElementsByTagName('img')[0].style.visibility='hidden';
		return false;
	},

changer:function(titre){
		loto=false;
		if(kplayer.divgeneral!=null){
			var le=kplayer.divivi;
			if(!le.paused){
				kplayer.odevi('stp');
			}
			kplayer.divdefile.getElementsByTagName('div')[2].style.width=0+'px';

			var version=navigator.userAgent.indexOf('Firefox',0);
			if(navigator.userAgent.indexOf('Firefox',0)!=-1 && parseInt(navigator.userAgent.substring(version+8,version+9))<4){
				le.setAttribute('src',titre+'.ogv');
			}
			else{
				var elemensource=le.getElementsByTagName('source');
				elemensource[0].setAttribute('src',titre+'.webm');
				elemensource[1].setAttribute('src',titre+'.mp4');
				elemensource[2].setAttribute('src',titre+'.ogv');
				elemensource[3].setAttribute('src',titre+'.ogg');
			}

			le.load();
			kplayer.odevi('pla');
			kplayer.centrage(kplayer.divgeneral);

		}
		else{
			kplayer.initplayer(titre);
		}
	},

lolo:function(evt){

		var elem=kplayer.divivi;
		var dura=elem.duration;

		if(elem.buffered && elem.buffered.length>0){
			var charge=elem.buffered.end(0);
			kplayer.divdefile.getElementsByTagName('div')[2].style.width=(((charge/dura).toFixed(2))*(kplayer.divdefile.offsetWidth-kplayer.divdefile.getElementsByTagName('div')[0].offsetWidth))+'px';
			if(((charge/dura).toFixed(2))>=0.96){
				loto=true;
			}
		}
		else{
			kplayer.divdefile.getElementsByTagName('div')[2].style.width=((elem.loaded/elem.total)*(kplayer.divdefile.offsetWidth-kplayer.divdefile.getElementsByTagName('div')[0].offsetWidth))+'px';
			if((elem.loaded/elem.total)>=0.96){
				loto=true;
			}
		}
	},

initplayer:function(titre){

		kplayer.divgeneral=kdiver.creation('div','body','class','divico');
		var divico=kplayer.divgeneral;

		kplayer.divhd=kdiver.creation('div',divico,'class','hd','onmousedown','kdiver.sp(event)','onmouseup','kdiver.sp()','ondblclick','kplayer.pleinfin()');
		var hd=kplayer.divhd;
		kdiver.creation('div',hd,'class','bouge','onclick','kplayer.vivifin()');
		kdiver.creation('div',hd,'class','plein','onclick','kplayer.pleinfin()');
		kdiver.creation('span',hd,'class','ktxt','txt','K player');
		kplayer.divgg=kdiver.creation('div',divico,'class','gg','onclick','kplayer.odevi("pla")','class','ghh');

		var version=navigator.userAgent.indexOf('Firefox',0);
		if(navigator.userAgent.indexOf('Firefox',0)!=-1 && parseInt(navigator.userAgent.substring(version+8,version+9))<4){
			kplayer.divivi=kdiver.creation('video',kplayer.divgg,'class','vivi','src',titre+'.ogv','oncanplay','kplayer.saroule()','poster','res/kp.png','onwaiting','kplayer.attente()','autobuffer','true','preload','auto','onprogress','kplayer.lolo(event)');	 
		}
		else{
			kplayer.divivi=kdiver.creation('video',kplayer.divgg,'class','vivi','oncanplay','kplayer.saroule()','poster','res/kp.png','onwaiting','kplayer.attente()','autobuffer','true','preload','auto','onprogress','kplayer.lolo(event)');
			kdiver.creation('source',kplayer.divivi,'src',titre+'.webm','type','video/webm');
			kdiver.creation('source',kplayer.divivi,'src',titre+'.mp4','type','video/mp4');
			kdiver.creation('source',kplayer.divivi,'src',titre+'.ogv','type','video/ogg');
			kdiver.creation('source',kplayer.divivi,'src',titre+'.ogg','type','video/ogg');
		}

		kdiver.creation('img',kplayer.divgg,'class','imwait','src','res/29.gif');
		kdiver.creation('div',divico,'class','dr');
		kdiver.creation('div',divico,'class','gc');
		kplayer.divdefile=kdiver.creation('div',divico,'class','defile');
		var defile=kplayer.divdefile;
		kdiver.creation('div',defile,'class','scroll1','onmousedown','kplayer.scr("defile",event)');
		kdiver.creation('div',defile,'class','clique','onclick','kplayer.pb(event)');
		kdiver.creation('div',defile,'class','prech');
		kdiver.creation('div',defile,'class','suis');
		kplayer.divcontrole=kdiver.creation('div',divico,'class','controle');
		var controle=kplayer.divcontrole;
		kdiver.creation('img',controle,'src','res/play.png','onclick','kplayer.odevi("pla")');
		kdiver.creation('img',controle,'src','res/pause.png','onclick','kplayer.odevi("pau")');
		kdiver.creation('img',controle,'src','res/stop.png','onclick','kplayer.odevi("stp")');
		kdiver.creation('img',controle,'src','res/raz.png','onclick','kplayer.odevi("pos")');
		kdiver.creation('div',controle,'class','tmp','txt','00:00:00','onclick','kplayer.tpm("dif")','onmousedown','kdiver.selecte(event)');
		kplayer.divvol=kdiver.creation('div',kplayer.divcontrole,'class','vol');
		var vol=kplayer.divvol;
		kdiver.creation('img',vol,'class','temu','src','res/mute.png','onclick','kplayer.odevi("mut")');
		kdiver.creation('span',vol,'class','suivol');
		kdiver.creation('span',vol,'class','clicvol','onclick','kplayer.clvol(event)');
		kdiver.creation('div',vol,'class','scrolvol','onmousedown','kplayer.scr("vol",event)');
		kdiver.creation('div',divico,'class','rd','onmousedown','kplayer.scr("rd",event)');
		kplayer.zidex(divico);
		kplayer.odevi('pla');
		kplayer.centrage(kplayer.divgeneral)
	},

zidex:function(elem){
		var allElements = document.getElementsByTagName('*');
		var vaval=0;
		var vaz=0;
		for (var i = 0; i< allElements.length; i++){
			if(allElements[i].parentNode==document.body){
				vaz =parseInt(navigator.appName.substring(0,5)=="Micro" ? allElements[i].currentStyle.zIndex : getComputedStyle(allElements[i],null).getPropertyValue('z-index'));
				if(vaz>vaval){
					vaval=vaz;
				}
			}
		}
		elem.style.zIndex=vaval+1;
	},

vivifin:function(){
		kplayer.divivi.pause();
		kplayer.divivi.removeAttribute("onprogress"); 
		kplayer.divgeneral.parentNode.removeChild(kplayer.divgeneral);
		kplayer.divgeneral=null;
		if(tbplein.length!=0){
			tbplein.pop();
			tbplein.pop();
			tbplein.pop();
			tbplein.pop();
		}
	},
pleinfin:function(){
		if(tbplein.length==0){
			kplayer.redim('plus');
			return false;
		}
		if(tbplein.length>=3){
			kplayer.redim('moins');
			return false;
		}
	},

centrage:function(quoi){
		var dde=document.documentElement;
		var ddl=(navigator.vendor) ? document.body : document.documentElement;
		quoi.style.left=((dde.clientWidth-quoi.offsetWidth)/2)+ddl.scrollLeft+'px';
		quoi.style.top=50+ddl.scrollTop+"px";
	},

}

 Conclusion

la revolution est en marche

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

02 novembre 2009 15:39:39 :
petite modif
02 novembre 2009 20:14:53 :
ajout de bord
03 novembre 2009 14:06:11 :
debogage
03 novembre 2009 15:07:41 :
ajout d'un timer
05 novembre 2009 09:40:21 :
modif du titre
07 novembre 2009 14:17:18 :
amelioration generale
07 novembre 2009 18:36:13 :
optimisation
08 novembre 2009 16:04:12 :
html cree dynamiquement
09 novembre 2009 11:24:17 :
debogage
13 novembre 2009 11:08:57 :
retouche
16 novembre 2009 20:43:06 :
ajout dela possibilite de cliquer sur le volume pour le positionner et gestion d'une image d'attente de chargement
16 novembre 2009 21:57:12 :
petit oubli
21 novembre 2009 17:30:39 :
debogage
23 novembre 2009 22:17:20 :
dynamisation totale plus deboguage
01 décembre 2009 21:57:19 :
ajout d'une barre de prechargement
03 décembre 2009 21:21:26 :
debogage
15 décembre 2009 21:58:37 :
debogage
01 février 2010 20:41:13 :
ajout d'une fonction pour agrandir et reduire la fenetre et modif sur le designe des boutons
20 mars 2010 14:42:38 :
ajout d'un lien teste
05 août 2010 17:37:31 :
modification dom pour webkit
14 janvier 2011 13:03:07 :
fonction globale,le clic sur le timer donne la duree passé et restante,ajout de la barre de prechargement pour chrome prise en compte du bug pour firefox 3xx de la methode load
26 juin 2011 23:38:04 :
espace de nom ;compatibilite ie9 ;suppression des id ; debogage.
27 juin 2011 14:23:19 :
modification de la fonction de la barre de scroll

 Sources du même auteur

Source avec Zip Source avec une capture BOUTON ROTATIF
Source avec Zip Source avec une capture EFFET DE ROTATION A 360° D'IMAGE AVEC ACCELERATION DECELERAT...
Source avec Zip Source avec une capture PETIT LOGICIEL DE DESSIN, RETOUCHE AVEC CANVAS
Source avec Zip Source avec une capture DRAG & DROP VERS UN CANVAS
Source avec Zip Source avec une capture DIAPO EN CSS 3D

 Sources de la même categorie

Source avec Zip JDMATH-MINI.JS : GÉNÉRATION D'EXPRESSION MATHÉMATIQUE par jdmcreator
Source avec une capture SPHERE 3D DÉFORMABLE par phm
Source avec Zip Source avec une capture EFFET DE ROTATION A 360° D'IMAGE AVEC ACCELERATION DECELERAT... par kazma
Source avec Zip Source avec une capture PETIT LOGICIEL DE DESSIN, RETOUCHE AVEC CANVAS par kazma
Source avec Zip Source avec une capture CALCULATRICE HEURE par m22001111

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture HTML5 PLAYER par kazma
Source avec Zip Source avec une capture PETIT LECTEUR AUDIO HTML 5 par maichafred
Source avec Zip PLAYER VIDEO HTML À BONDER par Hakumbaya
Source avec Zip Source avec une capture WINDOWS MEDIA PLAYER POUR SITE EN HTML par fracker
RADIO PLAYER PARAMÉTRABLE par kiwi1nut

Commentaires et avis

Commentaire de crown69 le 22/11/2009 19:19:59 10/10

super script facile a mettre en place par contre si tu pouvais me dire comment modifier les fichiers pour que le player comporte un bouton close et comment decider de l'emplacement d'apparition du lecteur ça serait top!! merci d'avance et encore félicitation pour ton script ;)

Commentaire de crown69 le 22/11/2009 19:23:36

très pratique ton script et facile à mettre en place bravo !!
j'ai cependant deux petites questions?
pourrait tu m'expliquer comment rajouter un bouton close sur le player?
que faut il modifier pour determiner un autre emplacement d'apparition pour le lecteur?
merci d'avance et encore felicitation pour ton script ;)

Commentaire de kazma le 23/11/2009 22:33:15 administrateur CS

salut

ce que tu demmande j'avait commencer a le faire et j'ai accelerer le tout il y a maintenant un bouton pour fermer le player et aussi des que l'on clic sur lien ou autre  le player se positionnera automatiquement a cette endroit du moins il sera visible positionner en horizontal au centre de la page et en verticale a 50 pixel meme si c'est tout en bas de la page

la fontion se trouve dans le js diver (function centrage(quoi))

sinon merci pour la note entre autre tu est le premier a donner ton avis et je commencais a croire que sa interessait personnes je me sens moin seule

++

Commentaire de crown69 le 24/11/2009 14:29:56

Cool merci beaucoup !! je l'ai mis en place et ca marche super bien
bonne continuation
  ++ ;)

Commentaire de cirkooo le 19/12/2009 04:40:50 10/10

kazma: carrément top ton player, tant attendu, avec le code fourni. 17 améliorations en un mois et demi. Excellent. Merci. Un commentaire inutile: il y a t-il un bouton soutitrage? ^^, dans votre player augue. Sans blague: Bravo, ogv, mp4, firefox, chrome, bon ben tout est là, en avant avec le format ogv. Merci Beaucoup pour ce cadeau de noël 2009.

Commentaire de kazma le 21/12/2009 22:56:51 administrateur CS

il est vrait que je me suis depensé pour le player qui est maintenant a maturite et exenp de bog en tous cas merci pour les compliment

au sujet du sous titrage on peut facilement insere un div par dessus la video qui contiendrait le texte mais il y ensuite le probleme de la gestion de l'affichage du texte mais c'est tout a fait possible et tous ça en utilisant un fichier srt

une demo en action a cette adresse http://people.mozilla.com/~prouget/demos/srt/index2.xhtml

bonne fete

++

Commentaire de lily29 le 25/10/2010 22:05:06 10/10

Beau travail

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

PLAYER FLASH [ par lette ] Bonjour j'aimerais savoir si il est possible d'intégrer dans une page html le player flash afin que l'animation soit lue même si l'utilisateur n'a pa Recevoir des information dans une iframe [ par thebmxeur ] Bonjour a tous.pour mon site j'ai créé un petit player.Il fonctionne sous mozilla firefox mais pas sous ie.Dans ma page principal j'ai un formulaire p pop up [ par KapS ] salut tt le monde,en fait, il y a un truc que j'arrive pas &#224; faire, du moins, je sais pas comment mis prendre...en ins&#233;rant ce code, j'obtie Media Player + menu [ par PROTECTIONNISTE ] Salut,Je suis entrain de cr&#233;er un lecteur en html javscript, avec un menu d&#233;roulant,mais j'ai un soucis quand je d&#233;roule le menu (verti help !!!! création d'1 media player avec diviseur d'ecran [ par io_s ] slt &#224; tous , je suis d&#233;butante en java et donc je voudrez que vous m'aidiez&nbsp;( si qq'1 veut bien)&nbsp;&#224; cr&#233;er un media playe Media Player Divx Download time [ par astroinv ] Bonjour,PB simple, une page HTML, un Objet Media player qui a comme source un fichier DIVX de plus de 10 Mo. Comme le DIVX n'est pas streamer, il faut détection flash player, affichage div [ par Farfadam ] Bonsoir &#224; tous,je fais appelle a vos services car j'ai un petit souci (on peut dire &#231;a comme &#231;a...)donc voil&#224;, en fait j'ai trouv& Récupération d'url > javascript / php (d'une frame à une autre) [ par Shiver_Rayfresh ] Bonjour, je suis nouveau ici et je gal&#232;re s&#233;rieusement... Je vous expose le tableau : un frameset de 3 lignes : frame du haut : bandeau f Player PLS [ par miccarr ] Bonjour ... je recherche un code source qui me permet d'ouvrir un fichier *.pls sur mon site web ... et sans programme a installer !Merci a selui qui Controler le media player avec javascript [ par spyro666 ] Voil&#224;, je suis en train de cr&#233;er un petit prog qui permettrait de recenser mes MP3 et de les lancer. Jusqu'&#224; ici pas de probl&#232;me,


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,856 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales