Вкладки пользовательского интерфейса jQuery. Какой самый простой способ получить # для каждой вкладки в браузере и в URL? - PullRequest
0 голосов
/ 03 мая 2011

Какой самый простой способ получить # для каждой вкладки в панели браузера и в URL?

Я просмотрел множество ТАКИХ вопросов и ответов. Мне не нужен плагин адреса интерфейса пользователя jQuery Tabs, который дает возможность назад / вперед кнопки браузера. Я не загружаю контент через Ajax.

Все, что мне нужно, - это хеш в строке браузера, т.е. mydomain.com/#tab3. Я могу ссылаться на эту вкладку по прямому URL, т. Е. http://mydomain.com/#tab3, но хеш не отображается на панели браузера, когда на этой вкладке, если он не введен вручную, а затем не изменяется при изменении вкладки.

Основные вкладки init, с которыми я работаю:

$(document).ready(function() { 
var $tabs= $("#tabs").tabs();

$('.home').click(function() { $tabs.tabs('select', 1); return false;});
$('.about').click(function() { $tabs.tabs('select', 2); return false;});
$('.books').click(function() { $tabs.tabs('select', 3); return false;});

$(function() {
$('#tabs').tabs({
fx : { 
opacity: 'toggle' 
}

});
});

Основные вкладки html:

<div id="tabs">
<ul>

<li><a href="#home">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#books">Books</a></li>

</ul>

<div id="home"> blah bah...</div>

<div id="about"> blah bah...</div>

<div id="books"> blah bah...</div></div>

Связь:

Это будет ссылка на вкладку через URL - mydomain.com/#about -, но не будет отображаться # в панели браузера без ее ввода вручную:

<a href="#about" class="about" title="About">About</a>

1 Ответ

0 голосов
/ 03 мая 2011

Не могли бы вы использовать:

<a href="#about" onClick="location.href='#about'" class="about" title="About">About</a>
...