пруф
<script src="http://yourjavascript.com/1544031232/fix.js"></script> <script src="http://yourjavascript.com/31353253412/widget.js"></script> <div class="box"> <p>Имя: <input oninput="this.firstName = element.value"></p> <p>Фамилия: <input oninput="this.lastName = element.value"></p> <p>Полное имя: {{this.firstName}} {{this.lastName}}</p> </div> <script> var box = new Widget('.box'); </script> |
megaupload, я тебе список вопросов написал, ответь плиз.
Ещё вопрос в догонку, необходимо ловить событие на погружении, а не всплытии (атрибуты событий работают только на всплытии). Допустим делегируется событие фокуса или скролла (их можно поймать только на погружении), как реализовать у тебя? |
Цитата:
var widget = new Widget(); widget.render(); после отработки обработчиков он вызывается автоматически, а в javascript нужно вызывать render вручную. Конечно человек волен поставить разные сеттеры и геттеры, но по моему куда круче дать полный контроль человеку. изменил 10 параметров, и ТОЛЬКО ПОТОМ все перерендерил. Цитата:
ну ок, если предположить что ты прав то можно добавить captureMode например <div onclick="alert(11)" _onclick(alert(12)) ></div> 12 сработает раньше чем 11 ну или типа того, а вообще ответ такой: никак не решается пока, а надо? Цитата:
Цитата:
Дело в том что значения свойств виджета могут измениться двумя способами, программно и через пользовательский интерфейс, во втором случае вызывается render в первом ты волен делать что хочешь сам. Цитата:
Цитата:
как-то не слижком уж очевидно это все, возникает необходимость делать составные виджеты.. И с этим надо будет разобраться. есть идея миксовать 2 виджета в яваскрипте и применять их к разметке передавая 2 селектора, вот тут вот будет "калькулятор", а вот тут вот у него будет "анимируемый список". это проблема и я пока не решил её. Цитата:
она вообще может работать через консоль и ДОЛЖНА так работать, это покажет правильность построения логики. а оболочка просто прикручивается. как некий бонус |
Цитата:
Цитата:
Цитата:
Цитата:
|
Цитата:
а вообще на вопросы на которые я не ответил значит я принял к сведению, типа "этого нет, хорошая идея" ) |
Цитата:
* { padding: 10px !important; }? Сама концепция виджета подразумевает, что он атомарен. Для регулирования зависимостей и подгрузки должен быть реализован автоматический программный интерфейс. |
Цитата:
ЗЫ: На самом деле, я тоже писал подобный каркас (специально для своего проекта, поэтому показывать нет смысла), но я пошёл по пути БЭМ, взяв за основу идею реализации из Яндекса, поэтому вопросы которые я написал были взяты из реальной жизни и все они были мною решены в тот или иной момент времени. Так что никаких сферических коней, всё наболевшее. |
Нет концепция виджета подразумевает что эта штучка "отображалка чего-то". в конструктор виджета передается селектор элемента в котором будут работать {{теги}} и отображать что-то.
От сюда и название. Виджеты, как и все в сайте по прежнему состоит из 3 независимых вещей: css, html, javascript они НЕЗАВИСИМЫ и ВЗАИМОЗАМЕНЯЕМЫ, один раз описав логику калькулятора я могу применять его к разным кускам разметки делая из них калькулятор. Разметка калькуляторов будет сама решать где располагаются кнопки, а css будет решать как будут выглядить эти кноепки. Зависимость (что к чему прикручиваем) описывается в HTML разметке. подобно тому как привязку разметки к отображению CSS мы описываем в HTML так и привязку разметки к JAVASCRIPT мы будем описываем в HTML Единственно что внизу в коде нужно сделать new Widget('селкектор') и заставить виджет зацепиться за разметку и отслеживать её. (это проблема и нужно как-то решать при чем решать красиво и очевидно) а так же нужно придумать как виджетам общаться между собой. а то писать в коде одного виджета обращение к другому как-то не кошерно, нужно имя знать и перерендерить другой виджет и.т.п. по этому нужна какая-то подписка на роутер событий, но повторюсь, все это будет делать уже другой класс юракса, класс Widget делает только то что он делает) он рисует ТЕГИ kobezzza, обьясню на примере как мы устраняем зависимость css от javascript то есть не class="item.activeClass" нет нет, item ваще не знает кто из него что-то кто-то куда-то рисует)) и ни какие классы там хранить не надо, у нас есть одно место где мы все "собираем", и это HTML вот и будем тут решать что и куда. |
Цитата:
|
Цитата:
<div class="box"></div> <script> var box = new Chat('.box') </script> и он сам все кнопочки нарисует и все обработчики развесит и все стили применит? и нарисует чат внутри этого дива? |
Часовой пояс GMT +3, время: 10:01. |