Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

133 commentaire(s) de AbriBus sur des sources sur tout CodeS-SourceS

Le : 08/11/2006 12:40:13
Source : [VBA] LISTE DE FICHIER SOUS EXCEL
Merci bryann, je suis en train de regler deux ou trois probleme de compatibilité entre les versions, mais je devrais faire une mise a jour sous peu de cette source ;)


Le : 12/06/2006 11:43:00
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
Hmmm... tres interressant... je vais voir ca... Si ca fonctionne ca serait cool.
J'immagine que netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserWrite'); ne doit figurer que si le client n'est pas IE bien sur.
Ca fait beaucoup penser a java :P
Merci Bridloaque

AbriBus


Le : 19/05/2006 00:07:48
Source : WEBMESSAGEBOX
Petite precision de taille quand meme, il faut imperativement tester le passage de parametres en mode http (pas dans un rep en local sans que ca passe par un moteur http quelconque (IIS, Apache, easyPhp...) parceque la syntaxe http://{chemin}/{page}.htm?param=value doit etre interprété par le serveur). En outre, il peut etre utile de rappeler que ces parametres passent dans l'url (methode get) et sachez si vous modifiez le message que la taille maximale d'une url est de 255 caractères alors il faut y aller molo... ;)


Le : 18/05/2006 23:59:42
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
J'ai deposé un petit src quand meme... je l'ai un peu embelli par rapport au post que j'avais fait ici meme un peu plus haut... etpuis j'ai mis plus de commentaires et un peu plus d'intelligence... normalement, ca ne devrait produire aucune erreur javascript quelque soit le navigateur et sa version. J'y fait egalement de l'extraction de parametres en javascript.
Dispo: http://www.javascriptfr.com/code.aspx?ID=37659

Bon' Prog'
'BriBus


Le : 11/05/2006 18:29:14
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
C'est tout a fait ca azux, FF n'est pas multithread... et il ne reconnait pas de fonction javascript qui permettre de le mettre en "pause"... sinon, il y aurait bien eut la bonne vielle methode à la QBasic de faire une boucle dont la condition de sortie aurait été la fermeture de la fenetre mais si tu fais ca (vu qu'il y a pas de pause) ca te claque ton UC à 100% tant que t'as pas fermé ta fenetre... en plus (et heureusement je dirais) au bout d'une dizaine de seconde, FF te previent que "un script ne repond plus" (normal puisqu'il boucle)... donc pour le moment, pas de solution technique au probleme sauf a utiliser ces fameux alerte() prompt() et confirm() (trop moche !! beark :()
Il est vrai que le principe de modalité n'est pas simple a expliquer. Il est pareillement vrai que cette histoire avec FF c'est un peu la daube parceque les clients quand ils ont une idee dans la tete, ils l'on pas ailleur ! Sans pretention, je pense que les exigences qui m'ont été communiquées sont au moins aussi strictes que les tiennes... (et je comprend donc fort bien que tu sois dans le "petrin")

Bon courrage
'BriBus


Le : 10/05/2006 20:17:56
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
lol... sisi j't'assure rick, ca me fait tout a fait rigoler... :D c'est ca qu'est bon... rigoler en faisant son boulo... ;)
Bob> Merci pour ton comment encourageant mais je n'ai rien fait de plus que toi... j'veux dire, j'ai repris ce que t'as fait et dans les cas ou ca marche pas, je fait avec autre chose... c'est a dire une m€#D€ de messagebox inclus dans FF toute pourrie alors qu'avec IExplore on fait une vraie fenetre de cinglé... mais des que je trouve la reponse a ma question (a savoir comment faire pour que ca marche a tous les coups, IExplore ou pas), je post... ;)
Et puis, si je post la meme source que toi, quelques tests en plus... il diraient quoi les admins...? hein sheorogath  ;)


Le : 10/05/2006 11:42:54
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
rickenter> Tu as tout a fait raison... mais dans ces cas la, il ne s'agit plus d'une fenetre modale... qui a un fonctionnement tres particulier... Tu parles d'une 'fenetre de premier plan' ou d'une fenetre 'AOT' (Always On Top).

J_G> T'as bien raison, pour "ceux qui s'y connaissent" c'est vraiment cool de pas se faire emm€rD€r la vie par des stupidité sur les sites pornos. ^^ Mais quand tu fais du webdev pour des clients parfois un peu neuneu qui comprennent pas que s'ils ferment une page sans soumetre le formulaire qu'elle contient les données ne seront pas enregistrées (un peu genre... "allo Nix ? excuse moi je comprend pas j'ai écrit quelque chose dans la page web sur CS mais quand j'ai quitté ca n'a pas enregistré"... LOL)

Voila... j'ai fait un morceau de code (commenté !) qui propose une solution pour "fabriquer" des fenetre modale tant pour FF que pour IE au mieu de ce que permet la version de javascript presente coté client.
Le code est un peu rebarbatif mais il marche bien... et prend en charge la gestion multilingue

Premiere partie (a placer dans la page appelant la fenetre modale):

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<script>
// Initialisation des valeurs constantes définissant le type de fenetre
cstYESNO = 1;
cstOK = 2;
cstINPUT = 3;
langage_id = 0; // Ici c'est le Numero affecté a la langue (0 francais, 1 Anglais)

mes_taille = new Array(3); // Tableau contenant les couples de tailles (x, y) de la fanetre en pixels
mes_taille[1] = new Array(400, 200);
mes_taille[2] = new Array(600, 800);

mes_titre = new Array(); // Tableau contenant les n-uplets des titres de fenetre (n = nombre de langues)
mes_titre[0] = new Array('Fenetre Francaise', 'English window');

mes_etiquette = new Array(); // Tableau contenant les n-uplets des messages (n = nombre de langues)
mes_etiquette[0] = new Array('Etes vous sur(e) de vouloir fermer cette fenetre ?', 'Are you sure you want to close this window ?')

function ShowModalBox(typeBox, IdMessage, IdTailleFenetre, Parametre)
{
if (navigator.appName == "Microsoft Internet Explorer") // Pour internet explorer
{
if(showModalDialog) // S'il existe la fonction showModalDialog (IE 4 +)
{
featStr = 'center:yes; status:no; unadorned:yes; dialogWidth:' + mes_taille[IdTailleFenetre][0] + ' px; dialogHeight: ' + mes_taille[IdTailleFenetre][1] + ' px';
argv = new Array(10); // Creation du tableau de paramettre
argv[0] = typeBox; // Insertion du type de boite de dialogue
argv[1] = mes_etiquette[IdMessage][langage_id]; // Insertion du message dans le tableau de parametre en fonction de son Id
argv[2] = mes_titre[IdMessage][langage_id]; // Insertion du titre de la fenetre
argv[3] = Parametre; // Insertion du parametre eventuel
return window.showModalDialog("msgbox.html", argv, featStr);
}
else // Sinon (comme pour les clients autre que IE)
{
Msg = mes_etiquette[IdMessage][langage_id]; // Recuperation du message par son Id
if(typeBox == cstYESNO) // Si oui ou non
{
return confirm(Msg); // Demande si oui ou si non
}
else if(typeBox == cstOK) // Si Ok
{
return alert(Msg); // Indique le message
}
else if(typeBox == cstINPUT) // Si saisie de texte
{
return prompt(Msg, Parametre);
}
}
}
else // Si le client web n'est pas IE, affichage de la boite de dialogue classique
{
Msg = mes_etiquette[IdMessage][langage_id]; // Recuperation du message par son Id
if(typeBox == cstYESNO) // Si oui ou non
{
return confirm(Msg); // Demande si oui ou si non
}
else if(typeBox == cstOK) // Si Ok
{
return alert(Msg); // Indique le message
}
else if(typeBox == cstINPUT) // Si saisie de texte
{
return prompt(Msg, Parametre);
}
}
}
document.write('Vous avez repondu ' + ShowModalBox(cstYESNO, 0, 1, '')); // Affichage de la boite de dialogue et du resultat
</script>
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Deuxieme partie (a placer dans un fichier nommé msgbox.html):

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<script>
if (navigator.appName != "Microsoft Internet Explorer"){window.document.location = 'erreur2.asp?msg=Impossible d\'afficher cette page, votre navigateur ne vous le permet pas.';}
cstYESNO = 1;
cstOK = 2;
cstINPUT = 3;

argv = window.dialogArguments;
var jtypeBox = argv[0];
var jmessage = argv[1];
window.document.title = argv[2];
var jParametre = argv[3];
function setRetVal(retVal)
{
window.returnValue = retVal;
window.close();
}
</script>

<script>document.write('<br><h5 align=center><div id=\'message\'>' + jmessage + '</div></h3><br>');</script>

<script>
if(jtypeBox == cstYESNO){
document.write('<div align=center><table width="75%" cellspacing=0 cellpadding=0><tr align=center><td><input tabindex=12 type="button" name="Oui" value="Oui" class=boutonLarge2 onClick="setRetVal(true);"></td><td><input tabindex=12 type="button" name="Non" value="Non" class=boutonLarge2 onClick="setRetVal(false);"></td></tr></table></div>');
}else if(jtypeBox == cstOK){
document.write('<div align=center><table width="75%" cellspacing=0 cellpadding=0><tr align=center><td><input tabindex=12 type="button" name="Ok" value="Ok" class=boutonLarge2 onClick="setRetVal(true);"></td></tr></table></div>');
}else if(jtypeBox == cstINPUT){
document.write('<form name="demandeur" action="#"><div align=center><input type="text" name="inputText" size="40" value="' + jParametre + '"><br><br><input tabindex=12 type="button" name="Ok" value="Ok" class=boutonLarge2 onClick="setRetVal(document.forms[\'demandeur\'].inputText.value);"></div></form>');
}

</script>
</body></html>
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Voila... si vous trouvez une autre alternative a l'utilisation de ces alert(), confirm() et prompt() pour FF et IE < 4.0 oubliez pas de partager ;)

AbriBus


Le : 10/05/2006 08:08:20
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
Lol Bob... C'est peut etre vrai mais ce serait a tord... Vb gere des fenetre modale... et pourtant on l'accuse pas de plagier les features de java ou de C++... qui pourtant gerent tous deux (entre autre) les fenetres modales aussi...
:D
AbriBus


Le : 10/05/2006 07:09:10
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
Salut J_G,
C'est vrai que ta facon de "fabriquer" une modale a partir de ce qui n'en est pas une est assez amusante. c'estapréciable... n'en reste pas moins que si l'utilisateur le souhaite, il peut continuer de naviguer dans la page mere.
Comme le disait bob3000, "(...)tandis que les modaldialog restent devant la page.". En fait tu fais une modale a partir d'une modelessbien sur c'est recevable... :D mais si tu peint une pasteque en jaune, ca n'en fait pas un citron :D:D

Tout de meme on aurait pu s'attendre a ce que firefox gere lesfenetre modale... non ?


Le : 09/05/2006 22:42:54
Source : POPUP SPECIAL(MODAL - MODELESS DIALOG)
Salut RickEnter,
Si tu me permet Deux petites remarques sur ton code (posté sans explications !):
Tout d'abord,la fonction if(window.showModalDialog) Ne fonctionnera que sur IE 4.0 ou plus. Ce qui soit dit en passant est fort dommage quand on sait a quel point c'est pratique. Je vais expliquer pour Mr Enter qui ne l'a pas fait precedemment, à partir de l'une des version de JavaScript (celle de IE 5 donc), il est possible de verifier l'existance d'une fonction par l'utilisation de la fonction if([fonction]) qui renverra true ou false selon que la version de JavaScript la reconnait ou pas. (Ne fonctionne pas avec FireFox !!!!!).
En outre, et comme je le disait precedemment, la fonction window.open a laquelle on affecte les variables (url,titre,'height='+hauteur+',width='+largeur+',toolbar=no,menubar=no,location=no,resizable=no,scrollbars='+scroll+',modal=yes') ne produit PAS (a l'instar de ce que le paramettre "modal=" pourrait laisser sous entendre) une fenetre modale.
Afin qu'il n'y ai pas de confusion, je vais donner un exemple de fenetre modale:
lorsque vous remplissez un formulaire, et que vous decidez de changer de page SANS soumettre le formulaire, il se peut que vous ayez a utiliser une fenetre modale pour dire par exemple "Vous allez quitter la page blablabla (...) Etes vous sur(e) ?" avec un bouton "Oui" et un bouton "Non". Il va de soit que le lien d'une page a l'autre ne doit se faire QUE si l'utilisateur clique sur "Oui". Durant l'interval de temps separant l'apparition du message et la validation du choix de l'utilisateur, le code sera mit "en attente" (d'ou l'expression "suspendre l'interpretation, meme si apliqué au web, ca ne veut pas dire grand chose)
ceci se traduirait par un lien du type:
<a href="www.toto.fr" onClick="return window.showModalDialog(url,titre,'dialogHeight:'+hauteur+'px;dialogWidth:'+largeur+'px;resizable:0;status:1;center:1;scroll='+scroll+';help:0');">aller vers toto.fr</a>
La fenetre qui s'ouvrira sera modale pour IE et attendra de savoir quelle est la valeur du return pour effectuer ou non le saut d'une page a l'autre (si return = false alors la page ne suivra pas le lien).
En revanche, le code suivant affiche bien la page attendue comme la fenetre de confirmation mais n'attend pas le return et suivra le lien quoi qu'il arrive (et avant meme que vous ayez repondu, preuve s'il en est que la fenetre n'est pas modale):
<a href="www.toto.fr" onClick="return window.open(url,titre,'height='+hauteur+',width='+largeur+',toolbar=no,menubar=no,location=no,resizable=no,scrollbars='+scroll+',modal=yes');">lien vers toto.fr</a>

Merci quand meme Rick pour ton code.

AbriBus



1 2 3 4 5 6 7 8 9 10 11 12 13


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,125 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.