(函数($){/***此脚本将一组字段集转换为垂直堆栈*选项卡。单击相应的*选项卡。**每个选项卡可能有一个摘要,可以由另一个更新*脚本。为了实现这一点,每个字段集都有一个关联的*'verticalTabCallback'(带有附加到字段集的jQuery.data()),*每次用户更新表单时都会调用*选项卡窗格中的元素。*/Drupal.behaviors.verticalTabs={附加:函数(上下文){$('.vertical-tabs-panes',context).once('vertical-tabs',function(){var focusID=$(':hidden.vertical-tabs-active-tab',this).val();var选项卡焦点;//检查是否有一些字段集可以转换为垂直标签var$fieldsets=$('>fieldset',this);if($fieldsets.length==0){回报;}//创建选项卡列。var选项卡列表=$('');$(this).wrap('
').前面(tab_list);//将每个字段集转换为一个选项卡。$fieldsets.each(函数(){var vertical_tab=新Drupal.verticalTab({title:$('>legend',this).text(),字段集:$(this)});tab_list.append(vertical_tab.item);$(本).removeClass('折叠').addClass(“垂直标签”).data('verticalTab',vertical_tab);if(this.id==焦点id){tab_focus=$(这个);}});$('>li:first',tab_list).addClass('first');$('>li:last',tab_list).addClass('last');if(!tab_focus){//如果当前URL有一个片段,并且其中一个选项卡包含//元素匹配URL片段,激活该选项卡。if(window.location.hash&&$(window-location.hass,this).length){tab_focus=$(window.location.hash,this).closest('.vertical-tabs-pane');}其他{tab_focus=$('>.vertical-tabs-pane:first',this);}}if(tab_focus.length){tab_focus.data('verticalTab').focus();}});}};/***垂直选项卡对象表示选项卡组中的单个选项卡。**@param设置*具有以下关键点的对象:*-title:选项卡的名称。*-fieldset:作为选项卡窗格的fieldset的jQuery对象。*/Drupal.verticalTab=功能(设置){var self=此;$.extend(this,设置,Drupal.theme('verticalTab',设置));this.link.click(函数(){self.focus();返回false;});//添加的键盘事件://按Enter键将打开选项卡窗格。this.link.keydown(函数(事件){if(event.keyCode==13){self.focus();//将焦点设置在可见字段集/选项卡窗格的第一个输入字段上。$(“fieldset.vertical-tabs-pane:input:visible:enabled:first”).focus();返回false;}});//按Enter键可以再次离开选项卡。this.fieldset.keydown(函数(事件){//Enter键不应在内部触发