2009-11-28 2 views
0

В настоящее время я создаю веб-сайт в codeigniter, который является сайтом одной страницы, в основном один пользователь приходит на страницу, созданный с помощью главного меню из этого меню, которое они выбирают, какие разделы сайтов они хотели бы чтобы увидеть и щелкнуть по связанным ссылкам ... нажатие на эти ссылки должно отображать содержимое в собственном аккордеонном меню.CodeIgniter, jQuery и AJAX

Мой вопрос: я предполагаю, что самый простой способ сделать это - загрузить выбранные представления при использовании jquery и ajax? Если я ошибаюсь, что будет лучшим решением, также я не могу найти ничего о загрузке в представлениях с помощью ajax, есть ли у кого-нибудь какие-либо советы?

ответ

6

Да, вы можете легко загрузить контент с помощью AJAX и JQuery, связыванием клик событий на ваших меню и ссылки, например:

$("a.menuitem").click(function() { 
    var link = $(this), url = link.attr("href"); 
    $("#content_pane").load(url); 
    return false; // prevent default link-behavior 
}); 

Однако, идя по этому пути вы отказаться от некоторых ключевых функциональных возможностей в браузера. Кнопка «Назад» не работает. Ваши пользователи не могут добавлять в закладки какие-либо подстраницы. Возможны обходные пути (например, jquery history plugin), но для замены функциональности, которая исходит с каждым браузером пользователей, будет много работы.

+0

Спасибо за то, что я попытался реализовать это, но он просто переводит меня на новую страницу, добавляя контент на текущий экран к любым идеям? – Udders

+0

Если вы реализуете это так же, как написано, вам также необходимо убедиться, что ссылки имеют класс «menuitem», а ваш текущий экран имеет элемент с идентификатором «content_pane». Это скорее пример, чем готовый к использованию код. – Magnar

+0

Правда. Но если мы допустим ограничения на просмотр, мы будем использовать * cough * IE * cough *, мы все равно будем использовать CSS1, макеты таблиц и iframes :) – Atli