Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #41 (permalink)  
Старый 27.12.2011, 16:59
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от Kolyaj
Что такое область видимости для компонента? CSS, например, в любом случае будет глобальным, его не спрятать.
речь не о коллизиях, а том, что я знаю, например, какие файлы открыть, чтобы внести изменения

Сообщение от Kolyaj
Подход устарел. Пользователей без JS исчезающе мало, гораздо меньше, чем пользователей IE6, например. Значительно усложнять разработку ради гиков с noscript-ом смысла нет.
устарел? Впервые слышу, в jquery он по-моему очень активно используется.

По поводу значительного усложнения разработки не уверен, я не говорю об реализации эквивалентной функциональности без js. Возможно есть задачи, где сложно реализовать хоть какую-нибудь функциональность без js, но это по-моему скорее исключение.

И мне всегда казалось, что тут дело не в поддержке javascript, а в том, что это просто разумный подход. Вместо того чтобы делать страницу за раз, можно делать ее этапами: сначала статический вариант, а потом постепенно добавлять js-функциональность.

К тому же все равно есть статическая страница и есть js-компонент. Это в любом случае отдельные вещи. Нельзя избавиться от статической страницы. Разве что написать свой шаблонизатор (сборщик/язык) который будет собирать страницу из js-компонентов, и использовать html как транспорт что ли, или как реализацию. Другими словами создать слой абстракции поверх html, чтобы исправить его "недостатки".

Потом, нельзя оставить в странице только placeholder'ы для вставки компонентов. Что иначе поисковики будут индексировать?

и можешь все же рассказать, как ты делаешь?
Ответить с цитированием
  #42 (permalink)  
Старый 27.12.2011, 17:20
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от x-yuri
речь не о коллизиях, а том, что я знаю, например, какие файлы открыть, чтобы внести изменения
Всё равно не понятно. Какие файлы открыть должно быть понятно по названию компонента.


Я, честно говоря, не готов дискутировать о нужности unobtrusive javascript. Слишком много я пишу веб-приложений, и слишком мало обычных сайтов. Могу судить только как пользователь: большинство случаев этого самого unobtrusive javascript выглядят удручающе. Сначала появляется элемент, не обвешанный javascript-ом, потом пауза, потом он обвешивается функциональностью. Пауза посередине зависит от скорости загрузки сайта (DOMContentLoaded), и если какой-то скрипт в конце затупил, то всё плохо.
Ответить с цитированием
  #43 (permalink)  
Старый 27.12.2011, 17:38
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от Kolyaj
Всё равно не понятно. Какие файлы открыть должно быть понятно по названию компонента.
да, если изменение не повлияет на интерфейс, иначе надо найти все места использования. К тому же, у тебя подгружаются сразу все компоненты?

Сообщение от Kolyaj
Я, честно говоря, не готов дискутировать о нужности unobtrusive javascript.
ok, не будем, расскажи лучше, как ты делаешь, если возможно

Сообщение от Kolyaj
большинство случаев этого самого unobtrusive javascript выглядят удручающе. Сначала появляется элемент, не обвешанный javascript-ом, потом пауза, потом он обвешивается функциональностью. Пауза посередине зависит от скорости загрузки сайта (DOMContentLoaded), и если какой-то скрипт в конце затупил, то всё плохо.
когда необходимо, можно сразу же скрывать элемент, а показывать - при создании компонента
Ответить с цитированием
  #44 (permalink)  
Старый 27.12.2011, 20:24
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от x-yuri
иначе надо найти все места использования
Alt+F7

Сообщение от x-yuri
К тому же, у тебя подгружаются сразу все компоненты?
Да.
Я не исключаю случаи, когда необходима загрузка по требованию, но мне пока такие не попадались.


Сообщение от x-yuri
расскажи лучше, как ты делаешь, если возможно
Так я не знаю, что рассказывать. Все приложения состоят из компонент. Каждая компонента контекстно-независимо. Компоненты легко таскать из проекта в проект. Зависимость между компонентами контролируется с помощью BuildJS (ну или другая фигнюшка, если это яндексовый проект).
Ответить с цитированием
  #45 (permalink)  
Старый 27.12.2011, 22:16
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от Kolyaj
Alt+F7
да у меня тоже несложно найти. Наверное дело в том, что у меня есть код, привязанный к текущей странице. Т.е. в простых случаях я не создаю компонентов.

Сообщение от Kolyaj
Так я не знаю, что рассказывать. Все приложения состоят из компонент. Каждая компонента контекстно-независимо. Компоненты легко таскать из проекта в проект.
ну например, есть компонент, который добавляет label к текстовому полю (типа атрибут placeholder). Он удаляет текстовое поле из страницы и заменяет на свою разметку? Когда он это делает? Сразу в html? В конце body?
Ответить с цитированием
  #46 (permalink)  
Старый 28.12.2011, 09:43
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от x-yuri
ну например, есть компонент, который добавляет label к текстовому полю (типа атрибут placeholder). Он удаляет текстовое поле из страницы и заменяет на свою разметку? Когда он это делает? Сразу в html? В конце body?
У меня таких компонентов нет, у меня же веб-приложение. У меня может быть компонент, который содержит текстовое поле и label с нужным поведением. Т.е. нет компонента -- нет текстового поля.

Над задачей в твоей постановке я думал только в теории. Оптимально, пожалуй, сразу после текстового поля инициализировать его JavaScript-ом. Но тут есть проблема: скрипты надо грузить до основной страницы.
Ответить с цитированием
  #47 (permalink)  
Старый 28.12.2011, 10:23
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от Kolyaj
У меня таких компонентов нет, у меня же веб-приложение. У меня может быть компонент, который содержит текстовое поле и label с нужным поведением. Т.е. нет компонента -- нет текстового поля.
ну так вот я и пытаюсь выяснить, как у тебя. Я привел пример, но он не подошел. Приведи тогда ты.

Сообщение от Kolyaj
Над задачей в твоей постановке я думал только в теории. Оптимально, пожалуй, сразу после текстового поля инициализировать его JavaScript-ом. Но тут есть проблема: скрипты надо грузить до основной страницы.
поэтому я скрываю их сразу в html, а в конце body создаю компонент и показываю.
Ответить с цитированием
  #48 (permalink)  
Старый 28.12.2011, 10:30
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

У меня будет в начале пустая страница, а потом
new PlaceholderInput({
    renderTo: document.body
})

А внутри PlaceholderInput html/css/javascript.


Сообщение от x-yuri
поэтому я скрываю их сразу в html, а в конце body создаю компонент и показываю.
В результате всё равно надо ждать полной загрузки страницы, чтобы воспользоваться элементом. Это очень бесит на медленном канале, или если сайт подтормаживает. Вроде нужная часть страницы загрузилась, а сделать всё равно ничего нельзя. Впрочем если не скрывать, а просто подменять потом, всё равно бесит, т.к. элемент видно, но он не работает так, как ты привык.
Ответить с цитированием
  #49 (permalink)  
Старый 28.12.2011, 11:56
Аватар для PeaceCoder
Профессор
Отправить личное сообщение для PeaceCoder Посмотреть профиль Найти все сообщения от PeaceCoder
 
Регистрация: 15.12.2009
Сообщений: 742

Сообщение от x-yuri
поэтому я скрываю их сразу в html, а в конце body создаю компонент и показываю.
кмпонент должен быть прозрачным к преобразованию элемента. иначе получается фигня. тут сайт грузится. на 2 секи тормоза и подкатывает куча контента...
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
Ответить с цитированием
  #50 (permalink)  
Старый 28.12.2011, 17:19
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от Kolyaj
У меня будет в начале пустая страница, а потом
ага...

Сообщение от Kolyaj
В результате всё равно надо ждать полной загрузки страницы, чтобы воспользоваться элементом. Это очень бесит на медленном канале, или если сайт подтормаживает. Вроде нужная часть страницы загрузилась, а сделать всё равно ничего нельзя. Впрочем если не скрывать, а просто подменять потом, всё равно бесит, т.к. элемент видно, но он не работает так, как ты привык.
медленные каналы и тормозящие сайты бесят по определению, веб-приложение тоже может тормозить, разве что в случае сайта есть этот компромис между целостностью интерфейса что ли и сложностью поддержки. Но при этом у сайтов есть и преимущества, естественно.

Сообщение от PeaceCoder
кмпонент должен быть прозрачным к преобразованию элемента. иначе получается фигня. тут сайт грузится. на 2 секи тормоза и подкатывает куча контента...
не понял о каком преобразовании речь и как это связано с задержкой перед появлением
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг даты Allan Stark Общие вопросы Javascript 4 30.01.2014 18:57
HTML парсинг 350d jQuery 3 13.10.2010 23:08
Парсинг времени Falcon Общие вопросы Javascript 2 20.09.2010 17:23
custom Парсинг HTML нужен Increazon Общие вопросы Javascript 8 15.09.2010 13:23
не работает парсинг XML в IE Enxiro jQuery 6 25.08.2010 12:26