对于这个答案,我看起来很高很低。我遇到的问题是我的标签中存在某些需要保持原样的样式特征。以下是我正在处理的页面:
http://nextadagency.com/theta/services.html
我正在尝试为每个标签创建链接(在单独的页面上)。加载“服务”页面时,让它加载选定的选项卡,在顶部有一个唯一的#地址,并在页面顶部加载。出于某种原因,当我之前尝试链接到特定选项卡时,它会根据选项卡将页面加载到不同的区域。
答案 0 :(得分:0)
为了避免默认的哈希行为(页面跳转),我改为使用URL参数。在您的情况下,这将导致,例如http://nextadagency.com/theta/services.html?tab=3
$(function() {
// update URL parameter and browser history on manual tab select
$('#tabs').bind('tabsselect', function(event, ui) {
var myTab = $(ui.tab).attr('href').replace('#', '');
var myParam = '?tab=' + myTab;
window.history.pushState('Object', 'Title', myParam);
});
// get 'tab' URL parameter and select tab
var param = $(document).getUrlParam('activity');
$('#tabs').tabs('select', param);
});
这对你来说可能有些过分,但至少你需要停止默认的哈希行为,preventDefault()
可以。
答案 1 :(得分:0)
您可以使用网址#(哈希)和标签selected
选项:
$('#tabs').tabs({
selected: $('#tabs > ul > li > a[href='+window.location.hash+']').index()
});
然后当你去的时候:
http://nextadagency.com/theta/services.html#tabs1
它将加载包含...的标签
您还可以在每次更改标签时将哈希添加到网址:
$('#tabs').tabs({
select: function(e, ui){
window.location.hash = $(ui.tab).attr('href').replace(/\#/, '');
}
});