| vpktz |
|
|---|---|
|
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" id="home-tab" data-toggle="tab" href="#tab-1">home</a>
</li>
<li class="nav-item">
<a class="nav-link" id="folio-tab" data-toggle="tab" href="#tab-2">folio</a>
</li>
<li class="nav-item">
<a class="nav-link" id="product-tab" data-toggle="tab" href="#tab-3">product</a>
</li>
<li class="nav-item">
<a class="nav-link" id="clients-tab" data-toggle="tab" href="#tab-4">cliets</a>
</li>
<li class="nav-item">
<a class="nav-link" id="reviews-tab" data-toggle="tab" href="#tab-5">reviews</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane fade show active" id="tab-1">
<h3>Вкладка #1</h3>
</div>
<div class="tab-pane fade" id="tab-2">
<h3>Вкладка #2</h3>
</div>
<div class="tab-pane fade" id="tab-3">
<h3>Вкладка #3</h3>
</div>
<div class="tab-pane fade" id="tab-4">
<h3>Вкладка #4</h3>
</div>
<div class="tab-pane fade" id="tab-5">
<h3>Вкладка #5</h3>
</div>
</div>
<script>
$(function($){
var storage = document.cookie.match(/nav-tabs=(.+?);/);
if (storage && storage[1] !== "#") {
$('.nav-tabs a[href="' + storage[1] + '"]').tab('show');
}
$('ul.nav li').on('click', function() {
var id = $(this).find('a').attr('href');
document.cookie = 'nav-tabs=' + id;
});
});
</script>
Есть такой код + скрипт который позволяет оставаться на выбранной вкладке даже после перезагрузке странице. И он работает, за исключением того что при выборе любой из вкладки выкидывает на главную сайта + ссылка вкладки. Например https://site.ru/#tab-2. А так как этот nav-tab находиться на странице Пользователя модуля Users по адресу https://site.ru/users/Администратор то получается нужно на этой странице и оставаться и будет все норм. Так как если вернуться опять с главной (на которую выкинуло) на страницу пользователя то мы увидим что сохранение вкладки состоялось и все хорошо. Осталось теперь добиться что бы не выкидывало на главную. Понимаю что надо как то в скрипт добавить ссылку на пользователя {USERS_DETAILS_DETAILSLINK} что бы при нажатии на вкладку получалось что то типа https://site.ru/users/Администратор/#tab-2 в место https://site.ru/#tab-2 |
| webitproff |
|
|---|---|
|
в шаблоне темы в header.tpl есть <div id="ajaxBlock"> этот id ? Добавлено 2 минуты спустя: еще и от темы зависит, от бутстрапа... Добавлено 3 минуты спустя: вот стартовый вариант
<div class="span9">
<div class="pull-right">
<!-- IF {USERS_DETAILS_ISPRO} -->
<span class="label label-important">PRO</span>
<!-- ENDIF -->
<span class="label label-info">{USERS_DETAILS_USERPOINTS}</span>
</div>
<div class="tabbable">
<ul class="nav nav-tabs">
<li <!-- IF !{PHP.tab} --> class="active"
<!-- ENDIF -->> <a href="{USERS_DETAILS_DETAILSLINK}#tab_info" data-toggle="tab">{PHP.L.Main}</a>
</li>
<!-- IF {PHP.cot_modules.folio} -->
<li <!-- IF {PHP.tab}=='portfolio' --> class="active"
<!-- ENDIF -->> <a href="{USERS_DETAILS_FOLIO_URL}#tab_portfolio" data-toggle="tab">{PHP.L.folio} {USERS_DETAILS_FOLIO_COUNT}</a>
</li>
<!-- ENDIF -->
<!-- IF {PHP.cot_modules.market} -->
<li <!-- IF {PHP.tab}=='market' --> class="active"
<!-- ENDIF -->> <a href="{USERS_DETAILS_MARKET_URL}#tab_market" data-toggle="tab">{PHP.L.market} {USERS_DETAILS_MARKET_COUNT}</a>
</li>
<!-- ENDIF -->
<!-- IF {PHP.cot_modules.projects} -->
<li <!-- IF {PHP.tab}=='projects' --> class="active"
<!-- ENDIF -->> <a href="{USERS_DETAILS_PROJECTS_URL}#tab_projects" data-toggle="tab">{PHP.L.projects_projects} {USERS_DETAILS_PROJECTS_COUNT}</a>
</li>
<!-- ENDIF -->
<!-- IF {PHP.cot_plugins_enabled.reviews} -->
<li <!-- IF {PHP.tab}=='reviews' --> class="active"
<!-- ENDIF -->> <a href="{USERS_DETAILS_REVIEWS_URL}#tab_reviews" data-toggle="tab">{PHP.L.reviews_reviews} {USERS_DETAILS_REVIEWS_COUNT}</a>
</li>
<!-- ENDIF -->
<!-- IF {PHP.cot_plugins_enabled.sbr} -->
<li>
<a href="{USERS_DETAILS_ID|cot_url('sbr', 'm=add&uid='$this)}">Предложить сделку</a>
</li>
<!-- ENDIF -->
</ul>
</div>
<div class="tab-content">
<div class="tab-pane
<!-- IF !{PHP.tab} --> active
<!-- ENDIF -->" id="tab_info">
<table class="table">
<!-- IF {PHP.cot_modules.pm} -->
<tr>
<td>{PHP.L.users_sendpm}:</td>
<td>{USERS_DETAILS_PM}</td>
</tr>
<!-- ENDIF -->
<tr>
<td width="220">{PHP.L.Country}:</td>
<td>{USERS_DETAILS_COUNTRYFLAG} {USERS_DETAILS_COUNTRY}</td>
</tr>
<tr>
<td width="170">{PHP.L.Location}:</td>
<td>{USERS_DETAILS_REGION} {USERS_DETAILS_CITY}</td>
</tr>
<tr>
<td>{PHP.L.Timezone}:</td>
<td>{USERS_DETAILS_TIMEZONE}</td>
</tr>
<tr>
<td>{PHP.L.Birthdate}:</td>
<td>{USERS_DETAILS_BIRTHDATE}</td>
</tr>
<tr>
<td>{PHP.L.Age}:</td>
<td>{USERS_DETAILS_AGE}</td>
</tr>
<tr>
<td>{PHP.L.Gender}:</td>
<td>{USERS_DETAILS_GENDER}</td>
</tr>
<tr>
<td>{PHP.L.Registered}:</td>
<td>{USERS_DETAILS_REGDATE}</td>
</tr>
</table>
</div>
<div class="tab-pane
<!-- IF {PHP.tab} == 'portfolio' --> active
<!-- ENDIF -->" id="tab_portfolio"> {PORTFOLIO} </div>
<div class="tab-pane
<!-- IF {PHP.tab} == 'market' --> active
<!-- ENDIF -->" id="tab_market"> {MARKET} </div>
<div class="tab-pane
<!-- IF {PHP.tab} == 'projects' --> active
<!-- ENDIF -->" id="tab_projects"> {PROJECTS} </div>
<div class="tab-pane
<!-- IF {PHP.tab} == 'reviews' --> active
<!-- ENDIF -->" id="tab_reviews"> {REVIEWS} </div>
</div>
</div>
аккаунт удален - не срослось с разработчиками
ушел на другой движок |
| vpktz |
|
|---|---|
#46657 webitproff: Ура!!! спасибо!!!! Дефолтная действительно работает. Целый день вчера убил на гугл а оказалось просто изобретаю велосипед. Только скрипт надо не забыть, без него не работает
<script>
$(function($){
var storage = document.cookie.match(/nav-tabs=(.+?);/);
if (storage && storage[1] !== "#") {
$('.nav-tabs a[href="' + storage[1] + '"]').tab('show');
}
$('ul.nav li').on('click', function() {
var id = $(this).find('a').attr('href');
document.cookie = 'nav-tabs=' + id;
});
});
</script>
|