begin process at 2010 03 22 01:56:06
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fenêtre & Pop-up

 > FENÈTRE FLOTANTE

FENÈTRE FLOTANTE


 Information sur la source

Note :
7,17 / 10 - par 6 personnes
7,17 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fenêtre & Pop-up Niveau :Expert Date de création :28/11/2001 Vu :12 295

Auteur : Arnotic

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note


 Description

Voici une petite fenètre flotante.

Source

  • Dans le Head :
  • <script>
  • // by Erik Arvidsson for WebFX at http://webfx.eae.net
  • var checkZIndex = true;
  • var dragobject = null;
  • var tx;
  • var ty;
  • var ie5 = document.all != null && document.getElementsByTagName != null;
  • function getReal(el) {
  • temp = el;
  • while ((temp != null) && (temp.tagName != "BODY")) {
  • if ((temp.className == "moveme") || (temp.className == "handle")){
  • el = temp;
  • return el;
  • }
  • temp = temp.parentElement;
  • }
  • return el;
  • }
  • function moveme_onmousedown() {
  • el = getReal(window.event.srcElement)
  • if (el.className == "moveme" || el.className == "handle") {
  • if (el.className == "handle") {
  • tmp = el.getAttribute("handlefor");
  • if (tmp == null) {
  • dragobject = null;
  • return;
  • }
  • else
  • dragobject = eval(tmp);
  • }
  • else
  • dragobject = el;
  • if (checkZIndex) makeOnTop(dragobject);
  • ty = window.event.clientY - getTopPos(dragobject);
  • tx = window.event.clientX - getLeftPos(dragobject);
  • window.event.returnValue = false;
  • window.event.cancelBubble = true;
  • }
  • else {
  • dragobject = null;
  • }
  • }
  • function moveme_onmouseup() {
  • if(dragobject) {
  • dragobject = null;
  • }
  • }
  • function moveme_onmousemove() {
  • if (dragobject) {
  • if (window.event.clientX >= 0 && window.event.clientY >= 0) {
  • dragobject.style.left = window.event.clientX - tx;
  • dragobject.style.top = window.event.clientY - ty;
  • }
  • window.event.returnValue = false;
  • window.event.cancelBubble = true;
  • }
  • }
  • function getLeftPos(el) {
  • if (ie5) {
  • if (el.currentStyle.left == "auto")
  • return 0;
  • else
  • return parseInt(el.currentStyle.left);
  • }
  • else {
  • return el.style.pixelLeft;
  • }
  • }
  • function getTopPos(el) {
  • if (ie5) {
  • if (el.currentStyle.top == "auto")
  • return 0;
  • else
  • return parseInt(el.currentStyle.top);
  • }
  • else {
  • return el.style.pixelTop;
  • }
  • }
  • function makeOnTop(el) {
  • var daiz;
  • var max = 0;
  • var da = document.all;
  • for (var i=0; i<da.length; i++) {
  • daiz = da[i].style.zIndex;
  • if (daiz != "" && daiz > max)
  • max = daiz;
  • }
  • el.style.zIndex = max + 1;
  • }
  • if (document.all) { //This only works in IE4 or better
  • document.onmousedown = moveme_onmousedown;
  • document.onmouseup = moveme_onmouseup;
  • document.onmousemove = moveme_onmousemove;
  • }
  • document.write("<style>");
  • document.write(".moveme {cursor: move;}");
  • document.write(".handle {cursor: move;}");
  • document.write("</style>");
  • </script>
  • <style>
  • <!--
  • #testDiv {position: relative; height: 50px; width: 300px;
  • border: 2 outset white; background: lightyellow; margin: 0px;}
  • #title {background: activecaption; font: caption; width: 100%;
  • color: captiontext; padding: 3px; margin: 0px;}
  • #inner {border: 2 inset white; margin: 0px; padding: 3px;height: 100%;}
  • -->
  • </style>
  • Dans le body :
  • <div id="testDiv">
  • <div class="handle" handlefor="testDiv" id="title">Titre de la fenêtre</div>
  • <div id="inner">
  • Le contenu de la fenêtre ici !
  • </div>
  • </div>
Dans le Head :
<script>
//  by Erik Arvidsson for WebFX at http://webfx.eae.net  
var checkZIndex = true;
var dragobject = null;
var tx;
var ty;
var ie5 = document.all != null && document.getElementsByTagName != null;
function getReal(el) {
temp = el;
while ((temp != null) && (temp.tagName != "BODY")) {
	if ((temp.className == "moveme") || (temp.className == "handle")){
	el = temp;
	return el;
	}
	temp = temp.parentElement;
}
	return el;
}
function moveme_onmousedown() {
	el = getReal(window.event.srcElement)
	if (el.className == "moveme" || el.className == "handle") {
	if (el.className == "handle") {
	tmp = el.getAttribute("handlefor");
	if (tmp == null) {
	dragobject = null;
	return;
	}
	else
	dragobject = eval(tmp);
	}
	else 
	dragobject = el;
	if (checkZIndex) makeOnTop(dragobject);
	ty = window.event.clientY - getTopPos(dragobject);
	tx = window.event.clientX - getLeftPos(dragobject);
	window.event.returnValue = false;
	window.event.cancelBubble = true;
	}
	else {
	dragobject = null;
	}
}

function moveme_onmouseup() {
	if(dragobject) {
	dragobject = null;
	}
}

function moveme_onmousemove() {
	if (dragobject) {
	if (window.event.clientX >= 0 && window.event.clientY >= 0) {
	dragobject.style.left = window.event.clientX - tx;
	dragobject.style.top = window.event.clientY - ty;
	}
	window.event.returnValue = false;
	window.event.cancelBubble = true;
	}
}

function getLeftPos(el) {
	if (ie5) {
	if (el.currentStyle.left == "auto")
	return 0;
	else
	return parseInt(el.currentStyle.left);
	}
	else {
	return el.style.pixelLeft;
	}
}

function getTopPos(el) {
	if (ie5) {
	if (el.currentStyle.top == "auto")
	return 0;
	else
	return parseInt(el.currentStyle.top);
	}
	else {
	return el.style.pixelTop;
	}
}

function makeOnTop(el) {
	var daiz;
	var max = 0;
	var da = document.all;
	for (var i=0; i<da.length; i++) {
	daiz = da[i].style.zIndex;
	if (daiz != "" && daiz > max)
	max = daiz;
	}
	el.style.zIndex = max + 1;
}

if (document.all) { //This only works in IE4 or better
	document.onmousedown = moveme_onmousedown;
	document.onmouseup = moveme_onmouseup;
	document.onmousemove = moveme_onmousemove;
}

document.write("<style>");
document.write(".moveme	{cursor: move;}");
document.write(".handle	{cursor: move;}");
document.write("</style>");
</script>
<style>
<!--
#testDiv {position: relative;  height: 50px; width: 300px;
	 border: 2 outset white; background: lightyellow; margin: 0px;}
#title	{background: activecaption; font: caption; width: 100%;
	color: captiontext; padding: 3px; margin: 0px;}
#inner	{border: 2 inset white; margin: 0px; padding: 3px;height: 100%;}
-->
</style>

Dans le body :
<div id="testDiv">
<div class="handle" handlefor="testDiv" id="title">Titre de la fenêtre</div>
<div id="inner">
Le contenu de la fenêtre ici !
</div>
</div> 

 Conclusion

Amusez-vous bien ! :)


 Sources du même auteur

UN MENU AVEC LE BOUTON DROIT !
MESSAGE AVEC TEMPS DE POSE
DU TEXTE QUI DÉFILE
UNE JOLIE INTRO ;-)
FAIRE TOMBER DE LA NEIGE

 Sources de la même categorie

Source avec Zip Source avec une capture FENETRE D'ACTUALITE par kazma
Source avec Zip Source avec une capture CLASS POP-IN AVEC EFFET SOUS JQUERY DE "CONNEXION" STYLE CS ... par Nementon
Source avec Zip Source avec une capture FENETRE DE LOGIN par kazma
Source avec Zip Source avec une capture MESSAGES VIRTUELS par grarestephane
Source avec Zip Source avec une capture ENVOIE DE MESSAGE AUTOMATIQUE par grarestephane

Commentaires et avis

Commentaire de didwee le 17/12/2001 23:27:05

Génial cela marche très bien, mais si quelqu'un pourais m'aider à centré cette fenêtre flotante au lieu qu'elle soie allignié en haut à gauche ce serais vraiment top.  Mon mail à tout hasard est didwee@skynet.be Merci à vous.

Commentaire de pyroflo le 13/04/2003 21:48:13

Pour la centrer :

&lt;center&gt;
&lt;div id="testDiv"&gt;
&lt;div class="handle" handlefor="testDiv" id="title"&gt;Titre de la fenêtre&lt;/div&gt;
&lt;div id="inner"&gt;
Le contenu de la fenêtre ici !
&lt;/div&gt;
&lt;/div&gt;
&lt;/center&gt;

Et c'est tout !!!

Pyroflo
http://www.abcpyro.fr.st

Commentaire de lukacs le 03/09/2003 20:53:32

Cool :)

Commentaire de Rey66 le 05/10/2005 07:12:10

cest bien ce scripte, mais qqn peut m'aidé pour fair la meme chose avec une popup (en javascripte)qui sera apelet par une iframe?
mon problem est que jai placé le lien d'appel de popup dans une ifram et quond je vai l'apelé le popup il prond une position en raport avec la position du ifram, donc si je deplace le assenceur de fenetre dans iframe le popup s'ouvre dans un mauvese position et le visiteur ne peut pas la consulter le contenue de cel ci.
j'ai pensé que si je peut adapter ce fonction mon popup restera toujour dans le même hauteur , mais je ne sais pas ou je peut metre le code parce que mon popup c'est n'est pas une fenetre en html, mais c'est une sorte de fenetre (slide)en javascript, donc n'a pas les balise <head> et <body>
merci en avance

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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 : 0,874 sec (4)

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