06. marts 2008 - 17:19
Der er
1 kommentar
xsl, styling efter betingelser
Hejsa Jeg er ved at lave en hjemmeside i XML / XSLT og det går skam også ganske godt. Jeg har en menu, hvor i alle punkterne ved hover gøres mere synlige, jeg har prøvet at finde en løsning på hvordan jeg via XSLT kan reagere på noget i XML arket, fx titel på siden og bruge dette til at kunne gøre det aktive menu punkt lige så synligt som når jeg hover dem. Håber i forstår :p
Annonceindlæg fra GlobalConnect
11. marts 2008 - 13:01
#1
<xsl:if test="1=1"> Gør noget </xsl:if> Du kan sagtens skrive xpath udtryk mm. Der er også <xsl:choose>. Ex: Se en demo af en menu heR: <xsl:template match="Navigation" xml:space="default"> <xsl:if test="NavigationElement[@ShowInNavigation='true']"> <ul class="menu"> <xsl:apply-templates select="NavigationElement[@ShowInNavigation='true']" /> </ul> </xsl:if> </xsl:template> <!-- selected items --> <xsl:template match="NavigationElement[@ShowInNavigation='true']" xml:space="default"> <!-- Variable : itemClass // Append item classes for the LI and the A tags to the variable itemClass --> <xsl:variable name="itemClass"> <xsl:if test="position() = 1"> <xsl:copy-of select="$firstMenuItemClass" /> </xsl:if> <xsl:if test="position() = last()"> <xsl:copy-of select="$lastMenuItemClass" /> </xsl:if> <xsl:if test="@Selected='true'"> <xsl:copy-of select="$selectedMenuItemClass" /> </xsl:if> <xsl:if test="@ChildSelected='true'"> <xsl:copy-of select="$expandedMenuItemClass" /> </xsl:if> <xsl:if test="@NumberOfChildren > '0'"> <xsl:copy-of select="$hasChildrenMenuItemClass" /> </xsl:if> </xsl:variable> <li> <!-- Add classes to List tag --> <xsl:if test="not($itemClass='')"> <xsl:attribute name="class"> <xsl:copy-of select="normalize-space($itemClass)" /> </xsl:attribute> </xsl:if> <a> <xsl:if test="not($itemClass='')"> <xsl:attribute name="class"> <xsl:copy-of select="normalize-space($itemClass)" /> </xsl:attribute> </xsl:if> <xsl:attribute name="href" xml:space="default"> <xsl:choose> <xsl:when test="LongUrl != ''">/<xsl:value-of select="LongUrl" /></xsl:when> <xsl:otherwise>/<xsl:value-of select="$FilenamePrefix" /><xsl:value-of select="@PageId" /><xsl:value-of select="$FileExtension" /></xsl:otherwise> </xsl:choose> </xsl:attribute> <xsl:value-of select="NavigationTitle" /> </a> <xsl:if test="NavigationElement[@ShowInNavigation='true']"> <ul> <xsl:apply-templates select="NavigationElement[@ShowInNavigation='true']" /> </ul> </xsl:if> </li> </xsl:template>