我有这段代码,它使用cookie来使jquery选项卡选择继续刷新
问题是它只适用于jQuery UI 1.7.2和jQuery JavaScript Library v1.4.1
如果我更新到jQuery UI - v1.10.0和jQuery JavaScript Library v1.9.0,它不再存在(没有错误,只是没有在页面加载时保持选项卡选择)
任何人都知道为什么?
这是代码
$( function(){
var cookieName = 'stickyTab';
$( '#tabs' ).tabs( {
selected: ( $.cookies.get( cookieName ) || 0 ),
select: function( e, ui ){
$.cookies.set( cookieName, ui.index );
}
} );
} );
在我的HTML中我有
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<script type="text/javascript" src="jquery.cookies.js"></script>
提供
答案 0 :(得分:3)
cookie代码很好,但jQuery UI Tabs API随着升级而改变。
selected
不再是有效选项 - 已重命名为active
。select
不再是有效事件 - 已更改为activate
。index
的{{1}} param的ui
属性已被删除,还有更多工作要做,以确定哪个标签处于活动状态。以下是正在使用的新API的实时演示:http://jaaulde.com/test_bed/stickytabNewAPI/
这是具体的JS:
activate
我可以理解从select到activate等的名称更改。但是,我不理解为什么他们删除了 $(function () {
var cookieName = 'stickyTabNewAPI',
$tabs = $('#tabs'),
$lis = $tabs.find('ul').eq(0).find('li');
$tabs.tabs({
active: ($.cookies.get(cookieName) || 0),
activate: function (e, ui) {
$.cookies.set(cookieName, $lis.index(ui.newTab));
}
});
});
param的index
属性。这需要更多的工作......