2013-05-07 1 views
1

Я работаю над новым сайтом с jQuery mobile.JQuery mobile- javascript, param pass, css file organization

Задайте несколько конкретных вопросов. Просьба предоставить конкретные ответы. Я очень смущен, поскольку JQuery Mobile использует навигацию на основе ajax со страницы на страницу. Предположим, что страницы, на которые я ссылаюсь, находятся в отдельных файлах.

  1. Как мы должны организовать файлы javascript. Должен быть один файл javascript, который должен быть на главной странице. Или, как мы должны загружать javascript для конкретных страниц. Я чувствую себя немного нерешительным, чтобы поместить javascript внутри тега тела для его загрузки.

  2. Каков наилучший способ передать параметры с одной страницы на другую. Хотя есть несколько обсуждений по этому вопросу. Нет убедительного ответа.

  3. Как мы должны организовывать файлы CSS. Очень путают, чтобы иметь один файл для всего сайта.

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

ответ

3

Мое наблюдение будет происходить с точки, где ajax все еще включен, и вы не хотите размещать свой javascript/css внутри страницы BODY.

  1. Когда Ajax находится только на первой странице загружается в DOM, в каждой другой странице только ТЕЛА не будет загружена (нет смысла в том, чтобы несколько ГОЛОВКА «ы внутри DOM) ,

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

    У меня есть еще одна статья, посвященная этому так смотрите: Why I have to put all the script to index.html in jQuery Mobile

  2. Я только показать вам ссылку на мой другой ответ по этой теме, там вы найдете несколько решений с примерами, поиск для глава «Данные/Параметры манипуляции между переходами страниц»: jQuery Mobile: document ready vs page events

  3. Все, что я сказал на JavaScript и отражает здесь. Неважно, сколько css-файлов вы используете до тех пор, пока они сначала инициализируются HTML.

EDIT:

Я всегда готов к здоровой дискуссии. ;)

+1

Спасибо Гайотре. Итак, я устрою все скрипты в одном файле js. Но как мы должны загружать скрипты, специфичные для страницы. Это так? $ (Документ).on ('pageshow', '#YourPageID', function() { }); – user694688

+2

Вы правы. Но я бы посоветовал вам использовать pageinit вместо этого. Показ страниц запускает каждую посещаемую страницу, пока pageinit действует как готовый документ. Также с помощью pageinit у вас не будет проблем с привязкой нескольких событий. Все это описано в одной из ссылок в моем ответе. – Gajotres