2013-03-15 24 views
3

我有一个网站使用jQuery的UI标签小部件,它工作得很好,“老版本”,jQuery:1.5.1,jQuery UI:1.8.4。jQuery和jQuery的UI升级休息标签

对网站进行其他更改/升级,我希望转移到这两个软件包的更新版本,并逐步升级为“下一个主要版本”。如果不改变我自己的js代码的几行内容,我可以使用jQuery 1.8.3和jQuery UI 1.8.24,一切仍然正常。

将jQuery升级到1.9.1,单击选项卡似乎会触发重新加载页面而不是切换选项卡。所有标签都是静态的,所以不应该有任何Ajax问题。

的页面(这完全是TYPO3的安装的一部分)的URL具有以下格式:

https://server.some.where/?id=49&project_id=13&action_type=display 

当点击标签,一个HTTP GET为基本href +#标签-X是由:

https://server.some.where/#tabs-2 

由于早期版本的jQuery没有启动HTTP GET,而是愉快地切换标签,所以我很难过。通过阅读相关jQuery版本的更新日志,我看不到任何匹配的内容,但那可能只是我...... :-)

升级jQuery UI(1.9.2/1.10.2)会产生另一个问题 - 所有标签都是从头开始的(所有div都一个接一个地显示)。

相关HTML:

<div id="display-tabs"> 
    <ul class="tabs"> 
    <li><a href="#tabs-1">...</a></li> 
    <li><a href="#tabs-2">...</a></li> 
    <li><a href="#tabs-3">...</a></li> 
    </ul> 
    <div id="tabs-1">...</div> 
    <div id="tabs-2">...</div> 
    <div id="tabs-3">...</div> 
</div> 

标签控件的激活是死的简单:

$( '#显示标签')选项卡()。

jQuery是从谷歌获取,也似乎很动听:

<link rel="stylesheet" media="screen" type="text/css" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.24/themes/smoothness/jquery-ui.css" /> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.24/jquery-ui.min.js"></script> 

我已经消除在测试现场的jQuery的大多数其他用途暂时的,但这些问题似乎粘。任何想法欢迎...

+0

是'$( '#显示标签')的标签();'文件里面准备好了吗?例如,'$(function(){$(“#display-tabs”)。tabs();});' – Mooseman 2013-03-15 13:03:06

+0

另外,'https:// ajax.googleapis.com'应该是'// ajax。 googleapis.com'(请参阅http://encosia.com/3-reasons-why-you-should-let-google-host-jquery-for-you/#protocolless原因) – Mooseman 2013-03-15 13:05:06

+0

Yep @Mooseman,'$( “#display-tabs”)。tabs();'line与几百个朋友合作,放在工作的'$(function(){})中;' – 2013-03-15 13:15:08

回答

1

这个问题是一个已知的问题,但它花了我一段时间来连接点和使用正确的搜索条件 - 对不起!

总之,jQuery的1.9版本及以上治疗的<base href="URL">和链接的组合锚<a href="#tab-X">作为一个链接,本地的页面。这种行为可能比早期版本中发生的情况更为正确,但是这种变化打破了许多建立在依赖于基本标签的框架上的网站。我的本地解决方案是在定义选项卡的列表中提供完整链接,如下所示://$HTTP_HOST/$REQUEST_URI#tab-X。在这个问题上

更多信息: