Показать сообщение отдельно
  #67 (permalink)  
Старый 07.03.2010, 01:58
Кандидат Javascript-наук
Отправить личное сообщение для JAre Посмотреть профиль Найти все сообщения от JAre
 
Регистрация: 29.06.2009
Сообщений: 111

Для всех неверующих в мощь JQ:
Практически за 5 минут можно сделать свапалку, которая:
Разделяет стиль, данные, представление(html), JS сценарии.
Код, отвечающих за создание представления, может выполнятся как на стороне клиента(как сейчас) так и сервера. На клиенте = экономия ресурсов.

В итоге. Спец по рюшечкам работает с CSS. Спец по верстке с HTML, ну а мы кодим JS и никто ни от кого не зависит.

Этот костяк, очень гибок и масштабируем!
Код страницы:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<div id="goods_nav"></div>
<script>$.getScript('js/build_it.js');</script>
</body>
</html>


Сам скрипт:
$.getScript('js/jquery.xslt.js', function(){
	$('#goods_nav').xslt({xmlUrl: 'service/goods.xml', xslUrl: 'service/standard_display.xsl'});
});


и транслятор:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet>
    <xsl:template match="/">
        <xsl:apply-templates select="box/default"/>
    </xsl:template>
    <xsl:template match="box/default">
        <img src="{.}" id="goods_img" />
    </xsl:template>
 

        <xsl:template match="/">
            <xsl:apply-templates select="box/img"/>
        </xsl:template>
        <xsl:template match="box/img">
            <img src="{@icn}" onclick="$('#goods_img').attr('src', '{.}')" onMouseOver="$(this).attr('style','cursor:pointer');"/>
        </xsl:template>        

</xsl:stylesheet>


вот сборка: http://fileua.com/download.php?file=...ca7e78d8db0a9e

JS из транслятора можно вынести, для инкапсуляции или заменить на хэндл, но это ДЕМКА и тут главное наглядность.
goods.xml в рабочем коде может быть ...goods.xml?type=box - выбирается модель при переходе на страницку выбора цвета. Естественно goods.xml может содержать куда больше информации: рейтинги, цены, описание и тп. и тд. И всё это можно добавить в любой момент. Так же можо полностью изменить внешний вид страницы не трогая данные через display.xsl?type= то же на любой стадии.

ЗЫ. Я не учавствую в конкурсе

Последний раз редактировалось JAre, 07.03.2010 в 02:31.
Ответить с цитированием