redirection et annimation !

Eléphant du PHP | 71 Messages

06 févr. 2006, 15:38

Bonjour !

voilà j'ai un script qui permet d'ouvrir une fenêtre popup en pleine écran ou bout d'un certain temps.
Mais j'aimerais à la place d'un décompte 5 4 3 2 1 0 redirection.

Mettre plutot un truc du 0 10 20 30 40 50 60 70 80 90 100 % redirection.

ou du genre ..... redirection

voici mon code :

Code : Tout sélectionner

<html><head><title>Redirection en fonction de la résolution</title> <SCRIPT LANGUAGE="JavaScript"> <!-- function disp_reso() { document.write("Vous utilisez une résolution de <B>"+screen.width+"*"+screen.height+"</B>"); } function InitRedir() { // Indiquer ici la durée document.forms[0].elements[0].value=5; redir(); } function popup(page) { // ouvre une fenetre sans barre d'etat, ni d'ascenceur window.open(page,'popup','width=1280,height=1024,toolbar=false,scrollbars=false'); } function redir() { document.forms[0].elements[0].value=document.forms[0].elements[0].value-1; if (document.forms[0].elements[0].value==0) { if (screen.width<800) {window.open(page,'page640','width=1280,height=1024,toolbar=false,scrollbars=false');} if (screen.width==800) {window.location="page800.html";} if (screen.width==1024) {window.location="page1024.html";} if (screen.width==1152) {window.location="page1152.html";} if (screen.width>1152) { hauteur=Math.round((screen.availHeight-1024)/2); largeur=Math.round((screen.availWidth-1280)/2); window.open("http://127.0.0.1/logiciel/index.php", "page1600", "fullscreen=yes", "toolbar=0,location=0,directories=0,status=0, scrollbars=0,resizable=0,menubar=0"); } } else setTimeout("redir()",1000); } //--> </SCRIPT> </HEAD> <BODY text="#000000" bgcolor="#FFFFFF" alink="#FF8C00" link="#FF8C00" vlink="#FF8C00" onLoad="InitRedir()"> <FONT FACE="Arial" SIZE='-1' COLOR="navy"><CENTER> <BIG><B>Redirection selon la résolution</B></BIG><BR><BR> <BR><BR> <SCRIPT type="text/javascript"><!-- disp_reso(); //--></SCRIPT> <FORM> <BR>Vous allez &ecirc;tre <B>redirig&eacute;</B> vers la page correspondant &agrave; votre résolution <BR>dans <INPUT type="text" Value="5" size=2> % ! </FORM> </CENTER> <BR><BR><BR><BR><BR> </FONT> </BODY> </HTML>
Merci d'avance !

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

06 févr. 2006, 16:01

Salut,

a priori il suffit de changer ces 3 lignes:
document.forms[0].elements[0].value=5;
en
document.forms[0].elements[0].value=0;
document.forms[0].elements[0].value=document.forms[0].elements[0].value-1;

en
document.forms[0].elements[0].value=document.forms[0].elements[0].value+10;
if (document.forms[0].elements[0].value==0)
en
if (document.forms[0].elements[0].value==100)
il se passera donc 10 sec avant la redirection

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 71 Messages

06 févr. 2006, 16:18

Cela donne des chiffe incomgru pourrais tu me montrer ce que cela donne avec le code stp

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

06 févr. 2006, 16:32

des chiffres incongrus :lol:
à quel point

j'ai ajouté un pareInt() pour interpréter en tant qu'entier le champ lu:

Il n'y a pas tout le JS mais ce qu'il faut changer :wink:
function InitRedir() {
   // Indiquer ici la durée
   document.forms[0].elements[0].value=0;
    redir();
}
function popup(page) {
   // ouvre une fenetre sans barre d'etat, ni d'ascenceur
   window.open(page,'popup','width=1280,height=1024,toolbar=false,scrollbars=false');   
}
function redir() {

   document.forms[0].elements[0].value= parseInt(document.forms[0].elements[0].value)+10;
   if (document.forms[0].elements[0].value==100)
      {  // suite....

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 71 Messages

06 févr. 2006, 16:42

non ok c'est bon ca marche merci !

Dit moi tu serais pas comment l'on fait pour que la fenetre se ferme au bout d'un certain temps !

Puis comment enlevé les menu ect de IE !

Car la j'ai utilsé la fonction resize() opur dimensionner la page quand je la lance mais j'aimerais qu'elle se faire lorsque le popu et lancé et aussi que la page n'est pas de menu barre ur ect :

voici ma page :
<html><head><title>Redirection en fonction de la résolution</title>
<link rel="stylesheet" type="text/css" href="fichier_stylecss/style.css" media="screen" title="Normal" />



<SCRIPT LANGUAGE="JavaScript">

function resize(x,y) {
	parent.window.resizeTo(x,y);
}
function maximiser() {
	parent.window.moveTo(0,0);
	resize(screen.width-10,screen.height-30);
}

<!--
function disp_reso() {
	document.write("Vous utilisez une résolution de <B>"+screen.width+"*"+screen.height+"</B>");
}
function InitRedir() {
	// Indiquer ici la durée
	document.forms[0].elements[0].value=15;
    redir();
}
function popup(page) {
	// ouvre une fenetre sans barre d'etat, ni d'ascenceur
	window.open(page,'popup','width=1280,height=1024,toolbar=false,scrollbars=false');	
}
function redir() {
	document.forms[0].elements[0].value=parseInt(document.forms[0].elements[0].value)+10; 
	if (document.forms[0].elements[0].value==100) 
		{	
			if (screen.width<800) {window.open(page,'page640','width=1280,height=1024,toolbar=false,scrollbars=false');}
			if (screen.width==800) {window.location="page800.html";}
			if (screen.width==1024) {window.location="page1024.html";}			
			if (screen.width==1152) {window.location="page1152.html";}			
			if (screen.width>1152) {
				hauteur=Math.round((screen.availHeight-1024)/2);
				largeur=Math.round((screen.availWidth-1280)/2);
				window.open("http://127.0.0.1/logiciel/index.php", "page1600", "fullscreen=yes", "toolbar=0,location=0,directories=0,status=0, scrollbars=0,resizable=0,menubar=0");
			}			
		}
	else setTimeout("redir()",1000);
}
//-->
</SCRIPT>
</HEAD>

<BODY onLoad="InitRedir(); resize(480,420)">

<div style="margin:5px;">
	<h1>/ Office Gestion</h1>
		<div id="version">
			<div id="adminvideotheque">
				<div class="titre" id="bdd"><span class="intitule">Lancement de OfficeGestion</span></div>
					<div class="blocTxt">
						L'application OfficeGestion va démarrer dans
						<FORM>
						Vous allez &ecirc;tre redirig&eacute; vers la page correspondant &agrave; votre résolution <BR>dans 
						<INPUT type="text" Value="10" size=2> %
						</FORM>  		
					</div>
					<div name="spacer" style="height:10px;"></div>
				</div>
			</div>
			<div id="pied">
				Logiciel créé par <a href="http:///">essai</a>			
			</div>
		</div>
</BODY>
</HTML>

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

06 févr. 2006, 17:00

pour fermer une fenêtre :
window.close()
et pour la barre doutil, il ne doit pas en avoir puisque tu as :
toolbar=false
lors de l'ouverture de la popup

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 71 Messages

06 févr. 2006, 17:07

Oui maisje parle pas de la popup mais de la page active c'elle du code j'aimerais qu'elle se ferme au moment que la popup démarre.
Et j'aiermais que la page active n'est pas de barre d'outil.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

06 févr. 2006, 17:14

alors il faut que cette page elle même soie une popup :-k

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 71 Messages

06 févr. 2006, 17:49

Oui mais malheureusement cette page n'est pas démarrer par un lien c'est lap age index

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

06 févr. 2006, 19:22

dans ce cas il faut faire en sorte que ce script de redirection se trouve dans une popup.

essaie en ouvrant une popup, avec ce code, sur la page d'index.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute