IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

largeur de photo xsl/javascript


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 11
    Par défaut largeur de photo xsl/javascript
    Bonjour,

    Sur une feuille de style xsl, je veux afficher une image.
    Je mets cette image dans un <table> avec <width = 100px>.
    Je récupère la photo par un chemin d'accès en base de données.
    La photo peut faire en largeur soit plus de 100px soit moins.
    Ce que je voudrais pouvoir faire c est tester la largeur de ma photo pour déclarer mon <img> soit avec un width de 100 (pour limiter l affichage pour les photos plus larges) soit sans (pour les photos qui ne font que 2 ou 3 pixels de larges).
    Je récupère bien par javascript la valeur de la largeur mais je n'arrive pas à tester cette valeur avant de déclarer mon img en xsl.

    Voila un bout de code (qui ne fonctionne pas mais qui explique ce que je veux faire). Merci d'avance pour toutes vos suggestions.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    <script type="text/javascript">
    	<xsl:comment><![CDATA[
    		var monImage = new Image();
    		var maLimite;
     
    		monImage.src =']]><xsl:value-of select="VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='VIG']/CheminAcces/business_data"/><![CDATA[';
    		var maLargeur = monImage.width;
    		alert(maLargeur);
    		if (maLargeur > 100)
    		{
    			maLimite = 'O';
    		}
    		else
    		{
    			maLimite = 'N';
    		}
    		alert(maLimite);
     
    		]]>
    	</xsl:comment>
    </script>
     
    <xsl:variable name="Limite">maLimite</xsl:variable>
     
    <xsl:choose>
    	<xsl:when test="$Limite = 'O'">
    		<img alt="" border="0" width="100px">
    			<xsl:choose>
    				<xsl:when test="normalize-space(VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='VIG']/CheminAcces/business_data)!=''">
    					<xsl:attribute name="src">
    						<xsl:value-of select="VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='VIG']/CheminAcces/business_data"/>
    					</xsl:attribute>
    				</xsl:when>
    				<xsl:otherwise>
    					<xsl:attribute name="src">
    						<xsl:value-of select="VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='PHR']/CheminAcces/business_data"/>
    					</xsl:attribute>
    				</xsl:otherwise>
    			</xsl:choose>
    		</img>
    	</xsl:when>
    	<xsl:otherwise>
     
    		<img alt="" border="0">
    			<xsl:choose>
    				<xsl:when test="normalize-space(VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='VIG']/CheminAcces/business_data)!=''">
    					<xsl:attribute name="src">
    						<xsl:value-of select="VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='VIG']/CheminAcces/business_data"/>
    					</xsl:attribute>
    				</xsl:when>
    				<xsl:otherwise>
    					<xsl:attribute name="src">
    						<xsl:value-of select="VueMedia/JMediaView/JMediaViewRow[Typmed/business_data='PHR']/CheminAcces/business_data"/>
    					</xsl:attribute>
    				</xsl:otherwise>
    			</xsl:choose>
    		</img>
    	</xsl:otherwise>
    </xsl:choose>

  2. #2
    Membre Expert
    Avatar de virgul
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 625
    Par défaut
    Salut,

    Je suis pas un pro du javascript! Mais c'est pas avec xsl:param et non xsl:variable que tu récupère la valeur de ton code javascript?

    Car la comme tu l'as fait a mon avis la valeur de Limite c'est "maLimite"!

    moi je pense qu'il faut procéder comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ...
    <xsl:param name="maLimite"/> 
     
    <xsl:choose> 
       <xsl:when test="$maLimite = 'O'"> 
    ...
    ++

    Thierry

Discussions similaires

  1. Photo dynamique javascript
    Par UmanU dans le forum Général JavaScript
    Réponses: 33
    Dernier message: 02/09/2007, 22h24
  2. Probleme photo css/javascript/Xhtml
    Par dibeloni dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 03/10/2006, 15h58
  3. [Perl][XSL][Javascript] problème de chemin
    Par gojira dans le forum Web
    Réponses: 1
    Dernier message: 19/06/2006, 16h32
  4. XSL + javascript
    Par casgr1 dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 22/03/2006, 08h46
  5. [XSL/JavaScript]problème d'intégration code JS dans le XSL
    Par Devil666 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 27/04/2005, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo