@@ -29,6 +29,16 @@ return $.widget( "ui.tabs", {
29
29
delay : 300 ,
30
30
options : {
31
31
active : null ,
32
+ classes : {
33
+ "ui-tabs" : "ui-corner-all" ,
34
+ "ui-tabs-collapsible" : null ,
35
+ "ui-tabs-active" : null ,
36
+ "ui-tabs-nav" : "ui-corner-all" ,
37
+ "ui-tab" : "ui-corner-top" ,
38
+ "ui-tabs-anchor" : null ,
39
+ "ui-tabs-panel" : "ui-corner-bottom" ,
40
+ "ui-tabs-loading" : null
41
+ } ,
32
42
collapsible : false ,
33
43
event : "click" ,
34
44
heightStyle : "content" ,
@@ -74,8 +84,8 @@ return $.widget( "ui.tabs", {
74
84
this . running = false ;
75
85
76
86
this . element
77
- . addClass ( "ui-tabs ui-widget ui-widget-content ui-corner-all " )
78
- . toggleClass ( "ui-tabs-collapsible" , options . collapsible ) ;
87
+ . addClass ( this . _classes ( "ui-tabs" ) + " ui-widget ui-widget-content" )
88
+ . toggleClass ( this . _classes ( "ui-tabs-collapsible" ) , options . collapsible ) ;
79
89
80
90
this . _processTabs ( ) ;
81
91
options . active = this . _initialActive ( ) ;
@@ -281,7 +291,7 @@ return $.widget( "ui.tabs", {
281
291
this . _super ( key , value ) ;
282
292
283
293
if ( key === "collapsible" ) {
284
- this . element . toggleClass ( "ui-tabs-collapsible" , value ) ;
294
+ this . element . toggleClass ( this . _classes ( "ui-tabs-collapsible" ) , value ) ;
285
295
// Setting collapsible: false while collapsed; open first panel
286
296
if ( ! value && this . options . active === false ) {
287
297
this . _activate ( 0 ) ;
@@ -357,7 +367,7 @@ return $.widget( "ui.tabs", {
357
367
this . tabs . eq ( 0 ) . attr ( "tabIndex" , 0 ) ;
358
368
} else {
359
369
this . active
360
- . addClass ( "ui-tabs-active ui-state-active" )
370
+ . addClass ( this . _classes ( "ui-tabs-active" ) + " ui-state-active" )
361
371
. attr ( {
362
372
"aria-selected" : "true" ,
363
373
"aria-expanded" : "true" ,
@@ -378,7 +388,7 @@ return $.widget( "ui.tabs", {
378
388
prevPanels = this . panels ;
379
389
380
390
this . tablist = this . _getList ( )
381
- . addClass ( "ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all " )
391
+ . addClass ( this . _classes ( "ui-tabs-nav" ) + " ui-helper-reset ui-helper-clearfix ui-widget-header" )
382
392
. attr ( "role" , "tablist" )
383
393
384
394
// Prevent users from focusing disabled tabs via click
@@ -401,7 +411,7 @@ return $.widget( "ui.tabs", {
401
411
} ) ;
402
412
403
413
this . tabs = this . tablist . find ( "> li:has(a[href])" )
404
- . addClass ( "ui-state-default ui-corner-top " )
414
+ . addClass ( this . _classes ( "ui-tab" ) + " ui-state-default " )
405
415
. attr ( {
406
416
role : "tab" ,
407
417
tabIndex : - 1
@@ -410,7 +420,7 @@ return $.widget( "ui.tabs", {
410
420
this . anchors = this . tabs . map ( function ( ) {
411
421
return $ ( "a" , this ) [ 0 ] ;
412
422
} )
413
- . addClass ( "ui-tabs-anchor" )
423
+ . addClass ( that . _classes ( "ui-tabs-anchor" ) )
414
424
. attr ( {
415
425
role : "presentation" ,
416
426
tabIndex : - 1
@@ -457,7 +467,7 @@ return $.widget( "ui.tabs", {
457
467
} ) ;
458
468
459
469
this . panels
460
- . addClass ( "ui-tabs-panel ui-widget-content ui-corner-bottom " )
470
+ . addClass ( this . _classes ( "ui-tabs-panel" ) + " ui-widget-content" )
461
471
. attr ( "role" , "tabpanel" ) ;
462
472
463
473
// Avoid memory leaks (#10056)
@@ -476,7 +486,7 @@ return $.widget( "ui.tabs", {
476
486
_createPanel : function ( id ) {
477
487
return $ ( "<div>" )
478
488
. attr ( "id" , id )
479
- . addClass ( "ui-tabs-panel ui-widget-content ui-corner-bottom " )
489
+ . addClass ( this . _classes ( "ui-tabs-panel" ) + " ui-widget-content" )
480
490
. data ( "ui-tabs-destroy" , true ) ;
481
491
} ,
482
492
@@ -624,7 +634,7 @@ return $.widget( "ui.tabs", {
624
634
}
625
635
626
636
function show ( ) {
627
- eventData . newTab . closest ( "li" ) . addClass ( "ui-tabs-active ui-state-active" ) ;
637
+ eventData . newTab . closest ( "li" ) . addClass ( that . _classes ( "ui-tabs-active" ) + " ui-state-active" ) ;
628
638
629
639
if ( toShow . length && that . options . show ) {
630
640
that . _show ( toShow , that . options . show , complete ) ;
@@ -637,11 +647,11 @@ return $.widget( "ui.tabs", {
637
647
// start out by hiding, then showing, then completing
638
648
if ( toHide . length && this . options . hide ) {
639
649
this . _hide ( toHide , this . options . hide , function ( ) {
640
- eventData . oldTab . closest ( "li" ) . removeClass ( "ui-tabs-active ui-state-active" ) ;
650
+ eventData . oldTab . closest ( "li" ) . removeClass ( that . _classes ( "ui-tabs-active" ) + " ui-state-active" ) ;
641
651
show ( ) ;
642
652
} ) ;
643
653
} else {
644
- eventData . oldTab . closest ( "li" ) . removeClass ( "ui-tabs-active ui-state-active" ) ;
654
+ eventData . oldTab . closest ( "li" ) . removeClass ( this . _classes ( "ui-tabs-active" ) + " ui-state-active" ) ;
645
655
toHide . hide ( ) ;
646
656
show ( ) ;
647
657
}
@@ -707,18 +717,19 @@ return $.widget( "ui.tabs", {
707
717
} ,
708
718
709
719
_destroy : function ( ) {
720
+ var that = this ;
710
721
if ( this . xhr ) {
711
722
this . xhr . abort ( ) ;
712
723
}
713
724
714
- this . element . removeClass ( "ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible " ) ;
725
+ this . element . removeClass ( this . _classes ( "ui-tabs ui-tabs-collapsible" ) + " ui-widget ui-widget-content " ) ;
715
726
716
727
this . tablist
717
- . removeClass ( "ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all " )
728
+ . removeClass ( this . _classes ( "ui-tabs-nav" ) + " ui-helper-reset ui-helper-clearfix ui-widget-header" )
718
729
. removeAttr ( "role" ) ;
719
730
720
731
this . anchors
721
- . removeClass ( "ui-tabs-anchor" )
732
+ . removeClass ( this . _classes ( "ui-tabs-anchor" ) )
722
733
. removeAttr ( "role" )
723
734
. removeAttr ( "tabIndex" )
724
735
. removeUniqueId ( ) ;
@@ -730,8 +741,8 @@ return $.widget( "ui.tabs", {
730
741
$ ( this ) . remove ( ) ;
731
742
} else {
732
743
$ ( this )
733
- . removeClass ( "ui-state-default ui-state-active ui-state-disabled " +
734
- "ui-corner-top ui-corner-bottom ui-widget-content ui-tabs- active ui-tabs-panel " )
744
+ . removeClass ( that . _classes ( "ui-tabs-active ui-tab ui-tabs-panel" ) +
745
+ " ui-helper-reset ui-helper-clearfix ui-widget-content ui-state-default ui-state- active ui-state-disabled " )
735
746
. removeAttr ( "tabIndex" )
736
747
. removeAttr ( "aria-live" )
737
748
. removeAttr ( "aria-busy" )
@@ -829,7 +840,7 @@ return $.widget( "ui.tabs", {
829
840
// jQuery <1.8 returns false if the request is canceled in beforeSend,
830
841
// but as of 1.8, $.ajax() always returns a jqXHR object.
831
842
if ( this . xhr && this . xhr . statusText !== "canceled" ) {
832
- tab . addClass ( "ui-tabs-loading" ) ;
843
+ tab . addClass ( this . _classes ( "ui-tabs-loading" ) ) ;
833
844
panel . attr ( "aria-busy" , "true" ) ;
834
845
835
846
this . xhr
@@ -849,7 +860,7 @@ return $.widget( "ui.tabs", {
849
860
that . panels . stop ( false , true ) ;
850
861
}
851
862
852
- tab . removeClass ( "ui-tabs-loading" ) ;
863
+ tab . removeClass ( that . _classes ( "ui-tabs-loading" ) ) ;
853
864
panel . removeAttr ( "aria-busy" ) ;
854
865
855
866
if ( jqXHR === that . xhr ) {
0 commit comments