Действительно ли плохая практика добавлять html-разметку для стиля / оформления с помощью jquery? - PullRequest
2 голосов
/ 18 января 2012

У меня есть вопрос, это не самый ясный вопрос, но я хотел посмотреть, есть ли у кого-нибудь какие-нибудь идеи по этому поводу!

Я работаю над приложением, в настоящее время у нас есть только одна тема, но в будущем у нас будет много разных, так что этот вопрос был у меня в голове много ...

Если вы начинаете с чистого HTML и просто добавляете элементы для стилизации, можно ли использовать jQuery для добавления дополнительных элементов? Я думаю, что добавление вещей таким образом значительно упрощает создание адаптируемых макетов и делает ваш код чище и проще для понимания, но я всегда слышал, что это плохая практика.

Я использую эту систему для быстрого макетирования файлов, и это намного быстрее, чем сортировка стеков файлов, функций и классов для добавления этой разметки.

Каковы некоторые примеры альтернативных систем для добавления разметки такого рода, кроме того, что нужно перебирать тонны кода? Возможно, на примере гибкого статического двухколоночного макета или создания кнопки раздвижных дверей по всему сайту ... если кто-то захочет нанести удар, вы также можете использовать формы в качестве примера (что для меня было непросто с точки зрения продвинутого стиля) ... и, боже упаси, заставляя все это переключаться на языковую раскладку справа налево!

Надеюсь, некоторые разработчики шрифтов могут понять мой вопрос о желании отделить разметку стиля от функциональной разметки. Я ценю любые мысли / предложения / учебники, которые каждый может порекомендовать!

Спасибо!

Ответы [ 5 ]

3 голосов
/ 18 января 2012

Это в значительной степени то, как jQuery Mobile выполняет форматирование.Вам нужно поместить один или два атрибута в элемент (или ничего для базовых элементов), а затем, когда ваша страница jQM будет отображаться, появится jQM и добавит к классам кучу классов, отформатировав ее так, чтобы она подходила.

Плохая практика - Нет!

Хорошая практика, возможно, особенно если вы хотите, чтобы ваши темы радикально отличались

Следует, вероятно, добавить, что некоторые минимальные «фиксированные» стили помогут тем, кто решил отключитьJavaScript.

1 голос
/ 18 января 2012

Я написал приложения, которые используют JSON и создают 90% пользовательского интерфейса в JavaScript.Поскольку это ПРИЛОЖЕНИЕ, а не СТРАНИЦА, многое из того, что мы делаем для SEO и семантического HTML, на самом деле не применимо.Я бы никогда не ожидал, что Google будет индексировать эту страницу.

Несмотря на это, я стараюсь свести наценку к минимуму, чтобы структура и стиль работали.

Существует также проблема прогрессивное улучшение : начиная с базового HTML, затем используя JS для добавления функциональности.Это плохая практика - нет, не совсем.

1 голос
/ 18 января 2012

В первую очередь динамически добавляются элементы, например:

var item = $(document.createElement('div'));

Я работаю над приложением на основе шаблонов. Я делаю это, создавая HTML-шаблон, а затем загружаю его в основной контейнер, используя ajax. Таким образом, я могу размещать страницы в виде шаблонов в папке HTML и перетаскивать их в «сцену» при необходимости.

Редактировать: Вы должны знать, что разметка, вероятно, не будет видна поисковым системам для индексации.

1 голос
/ 18 января 2012

мое понимание вашего вопроса: "нормально ли добавлять такие вещи, как:

<div class="topCap"></div>

с jQuery для поддержания моего HTML в чистоте? ".

Я не знаю стандарта, но я стараюсь поддерживать мой HTML как можно более статичным. если что-то может потребоваться верхняя крышка, но дизайн не требует этого - это в любом случае в моем HTML.

Я делаю это, чтобы уменьшить время загрузки на стороне клиента. я не против написания / доставки дополнительного HTML, но я ненавижу, когда мой браузер должен создавать новые элементы при загрузке.

0 голосов
/ 18 января 2012

CSS Кажется, все еще то, что вы ищете. Когда вы даете элементам классы и идентификаторы, назовите эти классы и идентификаторы после функции, которую вы хотите, чтобы контент передавал. Например, допустим, в вашем текущем макете вы хотите ярко-красную область предупреждений для сообщений об ошибках: вместо того, чтобы называть это class = "red", попробуйте назвать его class = "alert". Таким образом, если вы решите перерисовать весь сайт, вы можете просто создать новую таблицу стилей CSS и изменить весь макет без необходимости редактировать HTML или Javascript. Еще одним преимуществом этого является то, что правильное использование классов и идентификаторов значительно облегчит в будущем любое взаимодействие, которое вам придется выполнять с использованием JQuery.

...