question top con... :)

question top con... :) - HTML/CSS - Programmation

Marsh Posté le 27-09-2005 à 20:28:29    

Salut a tous,
j'ai une question top con certainement en javascript... mais ca doit etre tellement trivial que personne ne prend la peine de le mentionner dans les tuto javascripts...
 
donc je pose le probleme :
je souhaite afficher une page avec un objet flash que je veux redimensionner en fonction de la résolution du visiteur...
 
bon donc dans le <head> j'ai mit ca :

Code :
  1. <script language="JavaScript"><!--
  2.       var largeur=screen.width-200;
  3.   var hauteur=largeur-100;
  4.   --></script>


 
j'ai fait un alert() de ces valeurs, et chouette!! c'est exactement ce que je veux! bon, ma question c'est... comment utiliser ces valeurs dans le code HTML pour "sizer" l'objet flash ?
j'ai essayé d'appeller les variables, par "javascript:largeur" marche pas... avec des accesseurs (fonctions getX getY qui retourne la hauteur ou la largeur), marche pas non plus...
 
pour info l'insertion de l'objet se fait par :

Code :
  1. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width='javascript:largeur' height='javascript:hauteur' id="Superanim4-4" align="middle">


 
merci!

Reply

Marsh Posté le 27-09-2005 à 20:28:29   

Reply

Marsh Posté le 27-09-2005 à 20:33:41    

oué mais nan c'est pas comme ca.
et puis enfaisant crade tu aurais réécris l'objet avec du document.write à gogo
sinon tu as une technique toute conne qui consiste a dimensionner ton flash avec des propriétés CSS
 
<objet style="height:80%;width:90%">
 
en utilisant des valeurs en pourcentage, c'est du tout bon

Reply

Marsh Posté le 27-09-2005 à 20:38:14    

ouais, merci, mais le problème c'est que je ne peux jamais "sizer" a un % proportionel a la résolution de l'écran....
 
genre un coup je devrais redimensionner à (X/Y) : 800 / 700 et puis sur un autre écran en 1280 / 1180
 
sinon je sens que je vais devoir faire des redirections a la con en fonction de la résolution et ca, ca ne me plait pas du tout :-S

Reply

Marsh Posté le 27-09-2005 à 20:42:09    

Tu es conscient qu'en enlevant 100 au width pour l'affecter au height tu ne conserves pas le meme ratio ? Si c'est fait expres je trouve que c'est un choix plus qu'etrange !

Reply

Marsh Posté le 27-09-2005 à 20:44:08    

c'est fait expres, et c'est fait expres pour respecter le format de l'anim flash qui est en 400*300 et que je redimensionne en fonction de la résolution.
par exemple 800/700 c'est pour un 1024/768 et ca passe tres tres bien. seulement avec une résolution au dessus, ca fait un peu petit... :-/
et en dessous... trop grand évidemment...

Reply

Marsh Posté le 27-09-2005 à 20:56:53    

Bah justement ... tu ne le respectes pas le format ... de l'anim flash en faisant ca xD

Reply

Marsh Posté le 27-09-2005 à 21:36:32    

hum ?
cette anim est un rectangle de hauteur/hauteur-100 et donc avec une variation de 100px.
mais la n'est pas le probleme, pour moi le probleme, c'est de redimensionner suivant ce ratio, suivant la taille de la résolution du client...  
 

Reply

Marsh Posté le 27-09-2005 à 21:52:52    

Les maths c'est pas ton truc a toi ;)

Reply

Marsh Posté le 27-09-2005 à 21:57:59    

c clair!

Reply

Marsh Posté le 28-09-2005 à 00:39:15    

j'ai un ecran en 1280x800 tu penses que ca va conserver ce que tu veux avec ca ?  
 
donc si tu cherches vraiment à resizer en fonction de l'ecran, base toi sur la hauteur de l'ecran
 
ensuite tu fais une regle de 3
 
et pour redimensionner un élément c'est de cette manière :  
 
var monobjet = document.getElementById("Iddelobjet" );
monobjet.style.width="700px";
monobjet.style.height="800px";

Reply

Marsh Posté le 28-09-2005 à 00:39:15   

Reply

Marsh Posté le 28-09-2005 à 11:10:18    

@Giansolo : un peu de mathématique. Les autres t'ont déjà fait la remarque (juste), je développe un peu plus.
 
640x480, ratio (rapport hauteur largeur) : 640/480=4/3 soit environ 1,33.
J'enlève 300 à chaque (Numérateur et Dénominateur) 340x180, ratio : 340/180=17/9 soit environ 1,89.
Pas DU TOUT la même chose.
 
Faut utiliser division/multiplication pas addition/soustraction ------> pourcentage.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed