За последние 24 часа нас посетили 28039 программистов и 1819 роботов. Сейчас ищут 856 программистов ...

JS - TAB - Selected

Тема в разделе "PHP для новичков", создана пользователем Kela, 13 фев 2017.

  1. Kela

    Kela Активный пользователь

    С нами с:
    20 дек 2014
    Сообщения:
    84
    Симпатии:
    1
    Привет всем, столкнулся с проблемой. не могу нормально сделать выделение таба.
    Код (Javascript):
    1.         $(document).ready(function () {
    2. if(window.location.href.indexOf('outbox') > -1) $('.tabs-box a#outbox').addClass("selected");
    3. else if(window.location.href.indexOf('pm') > -1) $('.tabs-box a#pm').addClass("selected");
    4. else if(window.location.href.indexOf('&doaction=newpm') != -1) $('.tabs-box span#newpm').addClass("selected");
    5. });
    ссылки
    Новое сообщение index.php?do=pm&doaction=newpm
    Входяшие index.php?do=pm
    Отправленные index.php?do=pm&folder=outbox
    Чтение сообщения index.php?do=pm&doaction=readpm&pmid=ID
    Подскажите как сделать нормально
     
  2. valentinnew

    valentinnew Активный пользователь

    С нами с:
    30 янв 2011
    Сообщения:
    161
    Симпатии:
    36
    а что, "a#pm" выделяется всё время, кроме "outbox"?
     
  3. Kela

    Kela Активный пользователь

    С нами с:
    20 дек 2014
    Сообщения:
    84
    Симпатии:
    1
    Мне надо выделить таб. как это сделать я хз. через код сверху - не работает newpm и readpm
     
  4. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    выложи плз html код того, что тебе нужно выделить
     
  5. valentinnew

    valentinnew Активный пользователь

    С нами с:
    30 янв 2011
    Сообщения:
    161
    Симпатии:
    36
    Код (Text):
    1. if(window.location.href.indexOf('folder=outbox') > -1){
    2.     $('.tabs-box a#outbox').addClass("selected");
    3. } else if(window.location.href.indexOf('doaction=newpm') > -1){
    4.     $('.tabs-box span#newpm').addClass("selected");
    5. } else if(window.location.href.indexOf('doaction=readpm') > -1){
    6.     'сам выдели то что нужно';
    7. } else {
    8.     $('.tabs-box a#pm').addClass("selected");
    9. }
    pm у тебя отрабатывате на каждой ссылке, т.к. он есть в каждой ссылке.
    + нет одной ссылки в условии на Чтение сообщения

    Как привильно:
    Не завязывайся на урле. Крайне ненадежная вещь. Ссылка может поменяться, по одной ссылке может быть несколько разных табов и т.д.
    Если это не ajax, то выделяй таб на бэкэнде. Если ajax, то не по ссылке, а по действию (при переключении таба)