r3538 committed - Tabs: fixed to work with empty nav list again....
Revision: 3538
Author: scott.gonzalez
Date: Fri Dec 25 10:25:46 2009
Log: Tabs: fixed to work with empty nav list again.
Fixes #4997 - No longer possible to start with empty tab then add()
elements dynamically.
http://code.google.com/p/jquery-ui/source/detail?r=3538
Modified:
/trunk/tests/unit/tabs/tabs.html
/trunk/tests/unit/tabs/tabs_core.js
/trunk/ui/jquery.ui.tabs.js
=======================================
--- /trunk/tests/unit/tabs/tabs.html Wed Dec 16 14:20:18 2009
+++ /trunk/tests/unit/tabs/tabs.html Fri Dec 25 10:25:46 2009
@@ -42,6 +42,34 @@
<div id="colon:test"></div>
<div style="height: 300px;" id="inline-style"></div>
</div>
+ <div id="tabs3">
+ <div>
+ <ul id="tabs3-list">
+ <li><a href="#tabs3-1">1</a></li>
+ </ul>
+ </div>
+ </div>
+ <div id="tabs4">
+ <ul id="tabs4-list">
+ <li><a href="#tabs4-1">1</a></li>
+ </ul>
+ <ol>
+ <li><a href="#tabs4-1">1</a></li>
+ </ol>
+ </div>
+ <div id="tabs4a">
+ <ol id="tabs4a-list">
+ <li><a href="#tabs4a-1">1</a></li>
+ </ol>
+ <ul>
+ <li><a href="#tabs4a-1">1</a></li>
+ </ul>
+ </div>
+ <div id="tabs5">
+ <div>
+ <ul id="tabs5-list"></ul>
+ </div>
+ </div>
</div>
</body>
</html>
=======================================
--- /trunk/tests/unit/tabs/tabs_core.js Wed Feb 18 13:44:34 2009
+++ /trunk/tests/unit/tabs/tabs_core.js Fri Dec 25 10:25:46 2009
@@ -7,6 +7,24 @@
module("tabs: core");
+test('navigation markup', function() {
+ el = $('#tabs3').tabs();
+ ok($('#tabs3-list').hasClass('ui-tabs-nav'), 'custom markup; allow list
to be any descendant');
+ el.tabs('destroy');
+
+ el = $('#tabs4').tabs();
+ ok($('#tabs4-list').hasClass('ui-tabs-nav'), 'first list found becomes
nav - ul');
+ el.tabs('destroy');
+
+ el = $('#tabs4a').tabs();
+ ok($('#tabs4a-list').hasClass('ui-tabs-nav'), 'first list found becomes
nav - ol');
+ el.tabs('destroy');
+
+ el = $('#tabs5').tabs();
+ ok($('#tabs5-list').hasClass('ui-tabs-nav'), 'empty list can be used');
+ el.tabs('destroy');
+});
+
test('ajax', function() {
expect(4);
stop();
@@ -34,6 +52,5 @@
});
});
-
-
+
})(jQuery);
=======================================
--- /trunk/ui/jquery.ui.tabs.js Tue Dec 22 11:51:24 2009
+++ /trunk/ui/jquery.ui.tabs.js Fri Dec 25 10:25:46 2009
@@ -68,8 +68,7 @@
_tabify: function(init) {
- // use $('li:first').parent() so we can find the first ul/ol in DOM order
- this.list = this.element.find('li:first').parent();
+ this.list = this.element.find('ol,ul').eq(0);
this.lis = $('li:has(a[href])', this.list);
this.anchors = this.lis.map(function() { return $('a', this)[0]; });
this.panels = $([]);
--