Сохранение состояния пользовательского интерфейса с помощью cookie и jquery - PullRequest
1 голос
/ 20 декабря 2010

Я пытаюсь сохранить состояние свертываемого меню и использую плагин jquery cookie. У меня пока что проблемы ... какая-то помощь?/ Расширить

<script type="text/javascript">
    $(document).ready(function() {

    $(".login-holder > ul > .loginTitle").click(function() {
        $(this).parent().find("li").slideToggle("fast");
        if ($(this).parent().find(".toggle").html() == "+") {
            $(this).parent().find(".toggle").html("-");
        } else {
            $(this).parent().find(".toggle").html("+");
        }
    });
   })
</script>

XHTML

<ul class="account-links">
         <div class="loginTitle">User Options<span class="toggle">-</span></div>
         <div class="menuLinks">
         <li>
            <%= Html.ActionLink<EventController>( x => x.List(), "Events Near Me" )%>
         </li>
         <li>
            <%= Html.ActionLink<MyEventsController>( x => x.List(), "My Events" )%>
         </li>
         <li>
            <%= Html.ActionLink<AccountController>( x => x.Edit(), "My Profile" )%>
         </li>
         <li>
            <%= Html.ActionLink<ClubController>( x => x.List(), "Clubs Near Me" )%>
         </li>
         <li> 
            <%= Html.ActionLink<MyClubsController>( x => x.List(), "My Clubs" )%>
         </li>
         <li>
            <%= Html.ActionLink<AccountController>( x => x.ChangePassword(), "Change My Password" )%>
         </li>
         <li>
            <%= Html.ActionLink<DependantController>( x => x.List(), "My Dependants" ) %>
         </li>
        </div>
      </ul>
   </div>
  <% if ( ViewModel.Profile.HasOrganizerInfo ) { %>
  <div class="login-holder">
     <ul class="account-links">
        <div class="loginTitle">Organizer Details<span class="toggle">-</span></div>
        <div class=menuLinks>
        <li>
           <%= Html.ActionLink<AccountController>( x => x.Organizer(), "Organizer Details" )%>
        </li>
        <li>
           <%= Html.ActionLink<EventController>( x => x.Edit( default(int?) ), "Post An Event" )%>
        </li>
        <li>
           <%= Html.ActionLink<EventAdminController>( x => x.List(), "Events Created By Me" ) %>
        </li>
        <li>
           <%= Html.ActionLink<ClubController>( x => x.Edit( default( int? ) ), "Create A Club" )%>
        </li>
        <li>
           <%= Html.ActionLink<ClubAdminController>( x => x.List( ), "Clubs Created By Me" )%>
        </li>
        </div>
     </ul>
  </div>
  <% } %>

1 Ответ

0 голосов
/ 20 декабря 2010

Один из способов, которым я сделал это, используя куки, - это прикрепить обработчик unload, который установил куки - он сделал это, найдя идентификаторы всех классов, которые в настоящее время не являются значениями по умолчанию (видимые или скрытые -до вас), а затем сохранить их в куки.Когда страница была загружена снова, она проверила бы, существует ли этот файл cookie, и в этом случае использовала бы строку идентификаторов в качестве селектора, чтобы применить класс toggled from the default к элементам, сохраненным ранее.

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