Оборачивание каждого символа в тег — различия между версиями
Материал из Umicms
Lesnik512 (обсуждение | вклад) (Новая страница: « category:Верстка в XSLT '''Актуально для xslt-шаблонизатора''' Часто бывает нужно обернуть кажду…») |
Whoa (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
− | + | '''Статья предоставлена партнером UMI.CMS [https://www.umi-cms.ru/find_webdevs/shiriev_artur_venerovich/ Шириевым Артуром]''' | |
− | '''Актуально для xslt-шаблонизатора''' | + | '''Актуально для версии 18 и xslt-шаблонизатора.''' |
− | Часто бывает нужно обернуть каждую цифру числа в какой-нибудь тег, например для анимации | + | Часто бывает нужно обернуть каждую цифру числа в какой-нибудь тег, например, для анимации различных счетчиков. |
Сделать такое можно с помощью рекурсивного вызова внутри шаблона. Ниже пример реализации на XSLT: | Сделать такое можно с помощью рекурсивного вызова внутри шаблона. Ниже пример реализации на XSLT: | ||
Строка 19: | Строка 19: | ||
</source> | </source> | ||
− | Тег span можно заменить на любой другой тег | + | Тег span можно заменить на любой другой нужный тег. |
+ | |||
+ | [[category:Верстка в XSLT]] |
Текущая версия на 10:45, 13 июня 2018
Статья предоставлена партнером UMI.CMS Шириевым Артуром
Актуально для версии 18 и xslt-шаблонизатора.
Часто бывает нужно обернуть каждую цифру числа в какой-нибудь тег, например, для анимации различных счетчиков.
Сделать такое можно с помощью рекурсивного вызова внутри шаблона. Ниже пример реализации на XSLT:
<xsl:template name="wrap-each-character">
<xsl:param name="string"/>
<xsl:if test="string-length($string) > 0">
<span><xsl:value-of select="substring($string,1,1)"/></span>
<xsl:call-template name="wrap-each-character">
<xsl:with-param name="string" select="substring($string,2)"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
Тег span можно заменить на любой другой нужный тег.