Разбиение одной страницы на несколько файлов - PullRequest
2 голосов
/ 14 марта 2012

Каков стандартный метод разделения содержимого страницы на несколько файлов, чтобы весь код находился не в одном файле.Ниже приведен фрагмент кода, содержащийся в одном файле. Разве я не должен ссылаться на каждую страницу идентификатора div в отдельном файле, есть ли стандартная практика для этого?

   <div id="page-1" data-role="page">
    <div data-role="header">
        <a href="#" data-icon="arrow-l" data-iconpos="left" data-rel="back" data-transition="slide" data-direction="reverse">Back</a>
        <h1>Page 1</h1>
    </div>
    <div data-role="content">
        <p>Page 1 content</p>
    </div>
    <div data-role="footer" data-position="fixed">
        <div data-role="navbar">
            <ul>
                <li><a href="#page-1" data-role="tab" data-icon="grid" class="ui-btn-active">Page 1</a></li>
                <li><a href="#page-2" data-role="tab" data-icon="grid">Page 2</a></li>
                <li><a href="#page-3" data-role="tab" data-icon="grid">Page 3</a></li>
            </ul>
        </div>
    </div>
</div>

<div id="page-2" data-role="page">
    <div data-role="header">
        <a href="#" data-icon="arrow-l" data-iconpos="left" data-rel="back" data-transition="slide" data-direction="reverse">Back</a>
        <h1>Page 2</h1>
    </div>
    <div data-role="content">
        <p>Page 2 content</p>
    </div>
    <div data-role="footer" data-position="fixed">
        <div data-role="navbar">
            <ul>
                <li><a href="#page-1" data-role="tab" data-icon="grid">Page 1</a></li>
                <li><a href="#page-2" data-role="tab" data-icon="grid" class="ui-btn-active">Page 2</a></li>
                <li><a href="#page-3" data-role="tab" data-icon="grid">Page 3</a></li>
            </ul>
        </div>
    </div>
</div>

<div id="page-3" data-role="page">
    <div data-role="header">
        <a href="#" data-icon="arrow-l" data-iconpos="left" data-rel="back" data-transition="slide" data-direction="reverse">Back</a>
        <h1>Page 3</h1>
    </div>
    <div data-role="content">
        <p>Page 3 content</p>
    </div>
    <div data-role="footer" data-position="fixed">
        <div data-role="navbar">
            <ul>
                <li><a href="#page-1" data-role="tab" data-icon="grid">Page 1</a></li>
                <li><a href="#page-2" data-role="tab" data-icon="grid">Page 2</a></li>
                <li><a href="#page-3" data-role="tab" data-icon="grid" class="ui-btn-active">Page 3</a></li>
            </ul>
        </div>
    </div>
</div>​

1 Ответ

1 голос
/ 14 марта 2012

Возьмите каждый элемент data-role="page и data-role="dialog" и вставьте его в файл, как показано ниже:

<!doctype html>
<html>

    <head>
        <meta charset="utf-8">
        <title>My Page's Title</title>
        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
        <link rel="stylesheet" href="/css/custom.css" />
        <script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
        <script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
        <script src="/js/custom.js"></script>
    </head>
    <body>
        [Your data-role="page" tag goes here]
    </body>

</html>

Возможно, вы думаете, really? why duplicate so much in every file?.Причина в том, что независимо от того, где пользователь заходит на ваш сайт, у него будут все ресурсы, необходимые для загрузки любой страницы.Это также полезно, так как jQuery Mobile использует AJAX для загрузки последующих страниц в DOM, и если весь ваш код всегда доступен, то каждая загруженная страница будет работать правильно.

Обратите внимание, что я добавил /js/custom.js и /css/custom.css файлов после включения jQuery Mobile.Это для всех пользовательских JS / CSS для всего вашего сайта.

При ссылке между страницами используйте абсолютные URL:

<a href="/hotel/room/special.html">My Link</a>

Таким образом, вы всегда будете указывать на правильныйURL, и если страница уже загружена в DOM, это помогает гарантировать, что версия, уже находящаяся в DOM, используется, а не загружать другую версию (которая может сломать ваш сайт, если в DOM одновременно есть две одинаковые страницы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...