Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comportement différent de IE sur Intranet et Internet

15 réponses
Avatar
J-Pierre
Bonjour,

Pour afficher des images (bmp, jpg, etc...) j'ouvre une fenêtre IE que je redimensionne aux dimensions de l'image plus un
chouai pour que l'image soit entourée d'un cadre blanc.

Dans cette fenêtre, je récupère les dimensions de l'image avec le composant ASP deXnView, et par code VBS, je calcule les
dimensions dans les variables NEWlarg et NEWHaut.

Puis sur évènement OnLoad="initImages();" de l'image:

function initImages()
<%response.write("window.resizeTo(" & NEWlarg & "," & NEWhaut & ");")
response.write("window.moveTo(" & posX & "," & posY & ");")%>
}

Sur Intranet, ça marche très bien, sur Internet, la fenêtre a la bonne largeur, mais a la hauteur de l'image.

Vu ma dernière prestation avec window.open, j'ai un peu peur de déranger pour rien, d'un autre côté, c'est le même code qui
s'exécute et que IE interprète différemment. Et ça fait aussi des heures que je cherche....

Si vous avez une idée, merci d'avance
J-Pierre

10 réponses

1 2
Avatar
Jean
Sur Intranet, ça marche très bien, sur Internet, la fenêtre a la bonne
largeur, mais a la hauteur de l'image.


Probablement que comme vous le signaliez ailleurs les fenêtres ne sont
pas les mêmes suivant le contexte (barre de titre ou autre en plus).

--
Jean - JMST
Belgium

Avatar
J-Pierre
Bonsoir Jean,

Non non, je ne suis pas doué, mais cette fois-çi, je teste sur mon Intranet, je charge mes pages avec LeechFTP sur le vrai
site, il n'y a donc aucune modif, mais une différence à l'exécution, juste la hauteur de la fenêtre......

Autre exemple de différence de fonctionnement: Sur Intranet, IE ne bloque pas les popup....

Ou alors, c'est dans le paramétrage de IE, les différences entre Intranet et Internet, je vais chercher ça aussi.....

Bon, je sais bien que j'ai perdu toute crédibilité :-(((((( mais mes fenêtres ne font pas la même dimension et je n'ai pas
touché au code....
Ce n'est pas dramatique non plus.

Merci
J-Pierre

"Jean" a écrit dans le message de news:
Sur Intranet, ça marche très bien, sur Internet, la fenêtre a la bonne largeur, mais a la hauteur de l'image.


Probablement que comme vous le signaliez ailleurs les fenêtres ne sont pas les mêmes suivant le contexte (barre de titre ou
autre en plus).

--
Jean - JMST
Belgium





Avatar
Jean
Ou alors, c'est dans le paramétrage de IE, les différences entre Intranet et
Internet, je vais chercher ça aussi.....



C'est le contexte d'exécution qui veut ça.
Vous pouvez modifier ça en modifiant les paramètres de sécurité
Internet dans la zone concernée (mais c'est plus que fortement
déconseillé).

Bon, je sais bien que j'ai perdu toute crédibilité :-((((((


Mais non.

mais mes fenêtres
ne font pas la même dimension et je n'ai pas touché au code....


Vous voulez dire que dans un cas vous avez des ascenseurs qui
paaparaissent et dans l'autre pas ?

Amicalement,

--
Jean - JMST
Belgium

Avatar
J-Pierre
Non, Jean, la fenêtre que j'ouvre pour afficher une image ne comporte aucun ascenseur ni barre d'outils, juste son cadre bleu,
je l'ouvre avec le code suivant:

bigImage = window.open(adresse, "bigImage", "resizable,width=" + (screen.availWidth - 10) + ",height=" + screen.availHeight +
",top=0,left=0,screenY=0,screenX=0", "hist=no");

Après, dans le code VBA de cette nouvelle fenêtre, je calcule la largeur et la hauteur de la fenêtre de manière à ce que
l'image soit entourée d'une bande blanche

Et lorsque l'image est chargée, évènement onload, un peu de Jscript:

response.write("window.resizeTo(" & NEWlarg & "," & NEWhaut & ");")
response.write("window.moveTo(" & posX & "," & posY & ");")

Et la hauteur de la fenêtre ne fait pas la même dimension, sur l'intranet c'est juste, sur internet c'est faux (hauteur de la
fenêtre ajustée à celle de l'image).

Pourtant, j'ai affiché avec un alert('.......') les dimensions calculées, ce sont les mêmes dans les 2 cas.......

Je crois que j'arriverai à vivre avec ça, je commence à fatiguer !!!!!!

Merci de m'avoir lu
J-Pierre

"Jean" a écrit dans le message de news:
Ou alors, c'est dans le paramétrage de IE, les différences entre Intranet et Internet, je vais chercher ça aussi.....



C'est le contexte d'exécution qui veut ça.
Vous pouvez modifier ça en modifiant les paramètres de sécurité Internet dans la zone concernée (mais c'est plus que
fortement déconseillé).

Bon, je sais bien que j'ai perdu toute crédibilité :-((((((


Mais non.

mais mes fenêtres ne font pas la même dimension et je n'ai pas touché au code....


Vous voulez dire que dans un cas vous avez des ascenseurs qui paaparaissent et dans l'autre pas ?

Amicalement,

--
Jean - JMST
Belgium





Avatar
J-Pierre
Jean,

Grâce à toi, j'ai trouvé la différence....elle me crevait les yeux, comme l'autre.
Tu as parlé des ascenseurs, en fait c'est la barre de status en bas de la fenêtre qui n'apparaît pas quand je teste sur
Intranet et qui apparaît quand la page est sur le site internet.

J'ai donc changé mon code pour ouvrir ma page:

bigImage = window.open(adresse, "bigImage", "resizable,scrollbars=no,menubar=no,status=no" +
",width=" + (screen.availWidth - 10) + ",height=" + screen.availHeight +
",top=0,left=0,screenY=0,screenX=0", "hist=no");

Le code est juste, car il est exécuté, mais IE laisse la statusBar toujours visible......

Si tu as une autre brillante idée :-)
Merci
J-Pierre


"J-Pierre" a écrit dans le message de news:
Non, Jean, la fenêtre que j'ouvre pour afficher une image ne comporte aucun ascenseur ni barre d'outils, juste son cadre
bleu, je l'ouvre avec le code suivant:

bigImage = window.open(adresse, "bigImage", "resizable,width=" + (screen.availWidth - 10) + ",height=" + screen.availHeight
+ ",top=0,left=0,screenY=0,screenX=0", "hist=no");

Après, dans le code VBA de cette nouvelle fenêtre, je calcule la largeur et la hauteur de la fenêtre de manière à ce que
l'image soit entourée d'une bande blanche

Et lorsque l'image est chargée, évènement onload, un peu de Jscript:

response.write("window.resizeTo(" & NEWlarg & "," & NEWhaut & ");")
response.write("window.moveTo(" & posX & "," & posY & ");")

Et la hauteur de la fenêtre ne fait pas la même dimension, sur l'intranet c'est juste, sur internet c'est faux (hauteur de
la fenêtre ajustée à celle de l'image).

Pourtant, j'ai affiché avec un alert('.......') les dimensions calculées, ce sont les mêmes dans les 2 cas.......

Je crois que j'arriverai à vivre avec ça, je commence à fatiguer !!!!!!

Merci de m'avoir lu
J-Pierre

"Jean" a écrit dans le message de news:
Ou alors, c'est dans le paramétrage de IE, les différences entre Intranet et Internet, je vais chercher ça aussi.....



C'est le contexte d'exécution qui veut ça.
Vous pouvez modifier ça en modifiant les paramètres de sécurité Internet dans la zone concernée (mais c'est plus que
fortement déconseillé).

Bon, je sais bien que j'ai perdu toute crédibilité :-((((((


Mais non.

mais mes fenêtres ne font pas la même dimension et je n'ai pas touché au code....


Vous voulez dire que dans un cas vous avez des ascenseurs qui paaparaissent et dans l'autre pas ?

Amicalement,

--
Jean - JMST
Belgium









Avatar
Jean
Le code est juste, car il est exécuté, mais IE laisse la statusBar toujours
visible......



C'est à partir de je ne sais plus quelle version (ou update) d'IE que
c'est comme ça : barre de statut toujours visible dans le contexte
internet avec la méthode Open.

Si tu as une autre idée :-)


Dans l'absolu :

Soit mettre status=yes dans la méthode Open et ajuster le code.

Soit ajuster le code en fonction du contexte.

Soit essayer avec d'autres méthodes comme showModelessdialog,
showModalDialog , createPopup ... mais là aussi je crois qu'il y aura
des différences entre Intranet et Internet et ça ne fera pas vraiment
avancer le schmilblik.

Sinon pour les popup la mode est plutôt de ne plus utiliser de fenêtres
externes (à cause des bloqueurs de fenêtres publicitaires).

Pour finir , à tout hasard et au cas ou vous ne connaîtriez pas, pour
l'Intranet les fichiers HTA roulent capot ouvert :-)

Amicalement,

--
Jean - JMST
Belgium

Avatar
J-Pierre
Bonjour Jean,


C'est à partir de je ne sais plus quelle version (ou update) d'IE que c'est comme ça : barre de statut toujours visible dans
le contexte internet avec la méthode Open.



Tu as malheureusement raison, je teste sur une machine Win XP Pro SP2, vesion IE 6.0.2900.2182
Sur mon autre PC Win2000 PRO SP4, version IE 6.0.2800.1106, la barre de statut n'apparaît pas.

Je vais donc essayer les différentes méthodes que tu proposes, dans l'immédiat, j'ai modifié mon calcul en agrandissant la
hauteur de la fenêtre, dans mon cas, ce qui compte, c'est la version internet, car l'intranet n'est qu'un environnement de
test.

Sinon pour les popup la mode est plutôt de ne plus utiliser de fenêtres externes (à cause des bloqueurs de fenêtres
publicitaires).



Ce ne sont pas des popup, j'affiche le contenu d'un répertoire du serveur, et l'utilisateur clique sur un bouton "ouvrir" pour
visualiser le fichier sans devoir faire un download. Evidemment, je me prends au jeu, et je veux pouvoir visualiser toujours
plus de types de fichiers.......pour le plaisir de le faire, je dois être un peu maso. En passant, tu connais XnView ? Ils
offrent un composant ASP gratuit qui permet d'afficher une centaine de formats d'image différent www.xnview.com

Pour finir , à tout hasard et au cas ou vous ne connaîtriez pas, pour l'Intranet les fichiers HTA roulent capot ouvert :-)



Non, je ne connais pas HTA, une recherche sur le site de MS donne 149 articles :-( dois-je vraiment lire tout ça ?


Pour finir, ayant une explication logique, pour moi, le problème est résolu. Je reviendrai juste dire si je suis arrivé ou pas
à le faire, peut-être pas aujourd'hui, ma femme vient de me dire: "Des fois, j'aimerais être ton ordinateur"


Amicalement,
J-Pierre

Avatar
J-Pierre
Jean,

Ma femme est avec des copines cet après-midi, j'ai pu continuer mes tests :-)

Je crois que j'ai l'explication:

En rajoutant mon site dans les sites de confiance (options Internet), la barre de statut ne s'affiche plus. Et l'intranet est
sans doute considéré comme un site de confiance, donc la barre ne s'affiche jamais.

J'ai aussi découvert que si je personnalise le niveau des sites Internet au lieu d'utiliser le niveau par défaut, la barre ne
s'affiche plus, comme ça m'intéresse, j'ai essayé de trouver le paramètre qui correspond à ça, mais je n'ai pas trouvé.

Si tu sais, tant mieux, sinon, ce n'est pas grave car c'est juste de la curiosité, en fait, ce que je souhaite, c'est que mon
navigateur se comporte comme le navigateur de monsieur tout le monde, et je pense que 99,99% des gens utilise le niveau par
défaut.

En tout cas, merci infiniment, j'ai un peu abusé de ta patience, mais j'ai énormément appris.

J-Pierre
Avatar
Jean
Jean,

Ma femme est avec des copines cet après-midi, j'ai pu continuer mes tests
:-)



C'est gentil de sa part :-)

Je crois que j'ai l'explication:

En rajoutant mon site dans les sites de confiance (options Internet), la
barre de statut ne s'affiche plus. Et l'intranet est sans doute considéré
comme un site de confiance, donc la barre ne s'affiche jamais.



En mettant le site dans les sites de confiance il sera exécuté dans une
zone de sécurité moindre.
"Utilisation des paramètres de sécurité d’Internet Explorer 6" :
http://www.microsoft.com/windows/ie_intl/fr/using/howto/security/settings.mspx

J'ai aussi découvert que si je personnalise le niveau des sites Internet au
lieu d'utiliser le niveau par défaut, la barre ne s'affiche plus, comme ça
m'intéresse, j'ai essayé de trouver le paramètre qui correspond à ça, mais
je n'ai pas trouvé.



Dans la rubrique "Divers"/"Autoriser les fenêtres initiées par des
scripts sans contrainte de taille ou de position".

Si tu sais, tant mieux, sinon, ce n'est pas grave car c'est juste de la
curiosité, en fait, ce que je souhaite, c'est que mon navigateur se
comporte comme le navigateur de monsieur tout le monde, et je pense que
99,99% des gens utilise le niveau par défaut.



C'est en tout cas très souhaitable.
Les paramètres par défaut pour les zones de sécurité, il ne faudrait
les modifier que pour accentuer la sécurité d'une zone, jamais pour la
diminuer.

Il est impensable (inconcevable ?) de distribuer un script dans quelque
contexte que ce soit en demandant à l'utilisateur de diminuer sa
sécurité ... parcequ'une fois modifié, l'utilisateur n'aura plus que
probablement pas le réflexe de remettre son paramètre à l'état initial.

Même dans un contexte local où le script pourrait se charger de
diminuer la sécurité puis la remettre à son état initial : si pour une
raison ou l'autre le processus du script est interrompu avant de
remettre l'état initial de sécurité, le script aura fait plus de mal
que de bien.

Il faut s'adapter au contexte d'exécution du script, et lorsque les
règles changent (suite à des mise à jour de sécurité par exemple),il
faut les admettre et s'y adapter (enfin plutôt adapter le script :-) ).

La mise en site de confiance est une chose a utiliser par un
utilisateur qui sait vraiment où il met les pieds.


Mais tout ça je crois que vous l'avez compris :-)

Amicalement,

--
Jean - JMST
Belgium

Avatar
Jean
C'est à partir de je ne sais plus quelle version (ou update) d'IE que
c'est comme ça : barre de statut toujours visible dans le contexte
internet avec la méthode Open.



Tu as malheureusement raison, je teste sur une machine Win XP Pro SP2,
vesion IE 6.0.2900.2182
Sur mon autre PC Win2000 PRO SP4, version IE 6.0.2800.1106, la barre de
statut n'apparaît pas.



C'est à partir de XP Sp2 :

http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/sp2brows.mspx#EHNAI

En passant, tu connais XnView ?


Oui, très bon programme, il fait partie des indispensables.

Ils offrent un composant ASP gratuit qui permet d'afficher une centaine de
formats d'image différent www.xnview.com


Ca je ne savais pas ... mais je ne pratique pas asp :-)

Amicalement,

--
Jean - JMST
Belgium


1 2