OK, with some experimentation, Ive cracked this one. The script that
ended up doing the trick:

var $tabs = $('#bucket1 > ul').tabs({
        fx: { opacity: 'toggle' },
        event: "mouseover"
        //show: function(event, ui) {$tabs.attr('id', ui.index) }
  })

  $('.ui-tabs-nav').bind('tabsshow', function(event, ui) {
        $tabs.attr('id', 'activeTab:'+ui.index)
  })

  .tabs('rotate', 2000);

If anyone knows of a more efficient means of doing this, please post,
but this did accomplish what I was looking to do. Thanks again, Klaus!
-Adam

On Nov 11, 11:50 am, Adam <[EMAIL PROTECTED]> wrote:
> Klaus,
> Thanks very much for your help! Ive done some experimenting with what
> you sent, and the 'show:' method doesnt seem to be valid- when I
> uncomment that portion of the following script, the tabs interface
> breaks, but it works as it should if I leave it commented out:
>
>   var $tabs = $('#bucket1 > ul').tabs({
>         fx: { opacity: 'toggle' },
>         //show: function(event, ui) { $tabs.attr('id', ui.index) };
>   })
>
>   .tabs('rotate', 2000);
>
> *I assumed that in the show:function you meant 'event' where you had
> 'e'. Could you please double check this? Also, could you specify how
> to add the prefix to the tab index when it does add the id to the UL
> element?
> Thanks!!
> -Adam
>
> On Nov 11, 10:05 am, Klaus Hartl <[EMAIL PROTECTED]> wrote:
>
> > You are initializing tabs twice, first  $('#bucket1 > ul').tabs({ fx:
> > { opacity: 'toggle' } })  and immediately on the next line. That'll
> > give you unexpected results. I suggest to use the show callback to set
> > the class for the list element.
>
> > Here's some (untested) code:
>
> > var $tabs = $('#bucket1 > ul').tabs({
> >     fx: { opacity: 'toggle' },
> >     show: function(e, ui) {
> >         $tabs.attr('id', ui.index);
> >     }})
>
> > .tabs('rotate', 5000);
>
> > Note that an id starting with a number is invalid, thus you may want
> > to add a prefix to that id...
>
> > --Klaus
>
> > On 10 Nov., 23:19, Adam <[EMAIL PROTECTED]> wrote:
>
> > > I have an instance of UI Tabs working with fade transition and auto-
> > > rotate, and would like to change the appearance of the ul.ui-tabs-nav
> > > by changing the position of its background sprite. I attempted to add
> > > these lines to the function which initiates the tabs, but it seems to
> > > only run once,  and given the auto-rotate functionality, I cant set a
> > > function to execute on click of one of the A elements. Can someone
> > > help to make this continually update the ID of my nav UL, or can
> > > someone think of a better way to do this?
>
> > > The script is this:
>
> > > <script type="text/javascript">
> > > $(function() {
> > >   $('#bucket1 > ul').tabs({ fx: { opacity:
> > > 'toggle' } }).tabs('rotate', 5000);
>
> > >   var $tabs = $('#bucket1 > ul').tabs();
> > >   var selected = $tabs.data('selected.tabs');
> > >   $('.ui-tabs-nav').attr("id", selected );
>
> > > });
>
> > > </script>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"jQuery UI" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/jquery-ui?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to