私は jQuery UI Tabs ウィジェットを使用する Web サイトを持っていますが、「旧バージョン」の jQuery: 1.5.1、jQuery UI: 1.8.4 で問題なく動作します。
サイトに他の変更/アップグレードを行って、両方のパッケージのより新しいバージョンに移動したいと思い、それぞれの「次のメジャーバージョン」に段階的にアップグレードしました。自分の js コードを数行以上変更することなく、jQuery 1.8.3 と jQuery UI 1.8.24 に到達できましたが、すべて正常に動作しています。
jQuery を 1.9.1 にアップグレードすると、タブをクリックすると、タブを切り替える代わりにページのリロードがトリガーされるようです。すべてのタブは静的であるため、ajax の問題は発生しません。
ページの URL (すべて Typo3 インストールの一部です) の形式は次のとおりです。
https://server.some.where/?id=49&project_id=13&action_type=display
タブをクリックすると、ベース href + #tab-X の HTTP GET が作成されます。
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>
タブ ウィジェットのアクティブ化は非常に簡単です。
$('#display-tabs').tabs();
jQuery は Google から取得されますが、問題ないようです。
<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 の他のほとんどの使用を排除してきましたが、これらの問題は解決しないようです。どんなアイデアでも歓迎...