Rechercher : dans
Par :

Onload

Dernière réponse le 12 mai 2009 à 17:38:37 Isa, le 12 mai 2009 à 16:40:33 
 Signaler ce message aux modérateurs

Bonjour,
Je voudrais savoir comment faire pour déclencher la popup javascript au chargement de la page. Je suppose qu'il faut remplacer la syntaxe du bouton par un body onload mais je ne vois pas trop comment lécrire de manière correcte. Voici le code :

<style type='text/css'>
.dragme { cursor: move }
</style>

<script type='text/javascript'>
var ie = document.all;
var nn6 = document.getElementById &&! document.all;

var isdrag = false;
var x, y;
var dobj;

function movemouse( e ) {
 if( isdrag ) {
   dobj.style.left = nn6 ? tx + e.clientX - x : tx + event.clientX - x;
   dobj.style.top  = nn6 ? ty + e.clientY - y : ty + event.clientY - y;
   return false;
 }
}

function selectmouse( e ) {
 var fobj       = nn6 ? e.target : event.srcElement;
 var topelement = nn6 ?  HTML  :  BODY ;
 while (fobj.tagName != topelement && fobj.className !=  dragme ) {
   fobj = nn6 ? fobj.parentNode : fobj.parentElement;
 }

 if (fobj.className== dragme ) {
   isdrag = true;
   dobj = document.getElementById( styled_popup );
   tx = parseInt(dobj.style.left+0);
   ty = parseInt(dobj.style.top+0);
   x = nn6 ? e.clientX : event.clientX;
   y = nn6 ? e.clientY : event.clientY;
   document.onmousemove=movemouse;
   return false;
 }
}

function styledPopupClose() {
 document.getElementById( styled_popup ).style.display =  none ;
}

document.onmousedown=selectmouse;
document.onmouseup=new Function( isdrag=false );
</script>

<div id='styled_popup' name='styled_popup' style='width: 380px; height: 300px; display:none; position: absolute; top: 50px; left: 50px;'>

<table width='380' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td><img height='23' width='356' src='media/x11_title.gif' class='dragme'></td>
<td><a href='javascript:styledPopupClose();'><img height='23' width='24' src='media/x11_close.gif'
border='0'></a></td>
</tr>
<tr><td colspan='2' style='background: url( media/x11_body.gif ) no-repeat top left; width: 380px; height: 277px;'>
Drag my window title to see me moving :-)
</td></tr>
</table>

</div>

<input type='submit' onClick='document.getElementById( styled_popup ).style.display= block ' value=' Fire! '> 


Merci !!
Configuration: Windows Vista Internet Explorer 7.0

Meilleures réponses pour « onload » dans :
Javascript - Les fonctions VoirLa notion de fonction On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la fonction dans le corps du programme principal. Cette notion de sous-programme est généralement appelée fonction...

1

Isa, le 12 mai 2009 à 16:46:08

( pour ceux qui ne voient pas le bouton de déclenchement est tout en bas... ) ;)))

Répondre à Isa

2

zoubiock, le 12 mai 2009 à 16:51:36

Un truc comme ça, non? :

Dans ta page HTML, ta balise body ressemble à ça
<body onLoad="display();">


Et dans ton javascript tu rajoutes une fonction display:

function display() {
document.getElementById( styled_popup ).style.display= block
}

Répondre à zoubiock

3

Isa, le 12 mai 2009 à 17:15:57

Ca ne marche pas !!! ); Voici ce que j'ai fait... après avoir mis mon script dans le head

<script>
...
function styledPopupClose() {
 document.getElementById( styled_popup ).style.display =  none ;
}

document.onmousedown=selectmouse;
document.onmouseup=new Function( isdrag=false );

function display() { 
document.getElementById( styled_popup ).style.display= block ;
}</script>
</head>

<body onLoad="display()"> 


<div id='styled_popup' name='styled_popup' style='width: 380px; height: 300px; display:none; position: absolute; top: 50px; left: 50px;'>

<table width='380' cellpadding='0' cellspacing='0' border='0'>
...

Répondre à Isa

4

zoubiock, le 12 mai 2009 à 17:23:21

Pardon, j'avais copié collé ton code! Mais ton boutton ne devait pas fonctionner non plus, si?

document.getElementById('styled_popup').style.display = 'block';

Répondre à zoubiock

5

Isa, le 12 mai 2009 à 17:27:54

Sisi avec le bouton ca marche impec. Maintenant il m'affiche déjà quelque chose implanté dans ma page mais avec une erreur En me disant que le body de la lign 29 n'est pas défini...

Celui-ci :

function selectmouse( e ) {
 var fobj       = nn6 ? e.target : event.srcElement;
 var topelement = nn6 ?  HTML  :  BODY ;

Répondre à Isa

6

zoubiock, le 12 mai 2009 à 17:34:24

Tu ne mets jamais de guillemets ?

function selectmouse( e ) {
var fobj = nn6 ? e.target : event.srcElement;
var topelement = nn6 ? 'HTML' : 'BODY' ;
...

Répondre à zoubiock

7

 Isa, le 12 mai 2009 à 17:38:37

C'est bon le problême est résolu!

Merci!

Répondre à Isa
Collection CommentÇaMarche.net