1function RePositionSubMenu() 2{ 3 $('.submenu').each(function(index1){ 4 var want_c1 = ""; 5 var want_c2 = ""; 6 var want_c3 = ""; 7 if($(this).children('.element_in_menu').length>0) 8 { 9 $(this).children('.columnehen2_1').each(function(index2){ 10 want_c1 = want_c1 + $(this)[0].outerHTML; 11 }); 12 $(this).children('.columnehen2_2').each(function(index2){ 13 want_c2 = want_c2 + $(this)[0].outerHTML; 14 }); 15 want_c3 = $(this).children('.element_in_menu')[0].outerHTML; 16 $(this).children('.element_in_menu').addClass('remove_me_from_menu'); 17 $('.submenu:eq('+index1+')').append('<table border="0" cellpadding="0" cellspacing="0" class="js-table"><tr><td class="c1" valign="top">'+want_c1+'</td><td class="c2" valign="top">'+want_c2+'</td><td><div class="scissors"><div class="scissors-dashed"></div></div></td><td class="c3 c3element_in_menu" valign="top">'+want_c3+'</td></tr></table>'); 18 $('.submenu:eq('+index1+')').show(); 19 $('div.scissors').css('height', $('.submenu:eq('+index1+')').children('.js-table').outerHeight(true) ); 20 $('.submenu:eq('+index1+')').hide(); 21 } else { 22 $(this).children('.column_1').each(function(index2){ 23 want_c1 = want_c1 + $(this)[0].outerHTML; 24 }); 25 $(this).children('.column_2').each(function(index2){ 26 want_c2 = want_c2 + $(this)[0].outerHTML; 27 }); 28 $(this).children('.column_3').each(function(index2){ 29 want_c3 = want_c3 + $(this)[0].outerHTML; 30 }); 31 $('.submenu:eq('+index1+')').append('<table border="0" cellpadding="0" cellspacing="0" class="js-table"><tr><td class="c1" valign="top">'+want_c1+'</td><td class="c2" valign="top">'+want_c2+'</td><td class="c3" valign="top">'+want_c3+'</td></tr></table>'); 32 } 33 $('.submenu:eq('+index1+')').children('.sblock').wrapAll("<div class='remove_me_from_menu'></div>"); 34 }); 35 $('.remove_me_from_menu').remove(); 36 CheckMoreItemsOnResize(); 37} 38 39function CheckMoreItems() 40{ 41 $('.top_menu_lvl2').css('overflow', 'visible'); 42 43 var idealTop = $('.top_menu_lvl2 .vis:first').offset().top; 44 var badTop = $('.top_menu_lvl2 .vis:last').offset().top; 45 if(idealTop!=badTop) 46 { 47 var menuLastGoodIndex = 0; 48 $('.top_menu_lvl2 .vis').each(function(index) { 49 if(parseInt($(this).offset().top)==parseInt(idealTop)) 50 { 51 menuLastGoodIndex = index; 52 } 53 }); 54 var html = '<li class="moremenu"><a class="moremenu-a" href="#"><span> </span></a>'; 55 var html = html + '<div class="moremenu-sub"><div class="moremenu-title"><span> </span></div>'; 56 $('.top_menu_lvl2 .vis:gt('+(menuLastGoodIndex)+')').each(function(index){ 57 html = html + '<a class="moremenu-link" href="'+$(this).children('a.first').attr('href')+'">'+$(this).find('span.first').html()+'</a>'; 58 }); 59 html = html + '</div></li>'; 60 $('.top_menu_lvl2 .vis:gt('+(menuLastGoodIndex)+')').wrapAll("<li class='moremenulinks'></li>"); 61 $('.moremenulinks').hide(); 62 $('.top_menu_lvl2').append( html ); 63 } 64 65 // reposition submenu 66 RePositionSubMenu(); 67} 68 69function CheckMoreItemsOnResize() 70{ 71 /* hider part */ 72 CheckMoreItemsOnResizeHider(); 73 74 /* shower part */ 75 if($('.vis_deadlink').length>0) 76 CheckMoreItemsOnResizeShower(); 77} 78function CheckMoreItemsOnResizeHider() 79{ 80 var lastVisLeft = $('.top_menu_lvl2').children('.vis:last').offset().left; 81 var lastVisWidth = $('.top_menu_lvl2').children('.vis:last').outerWidth(); 82 var moremenuLeft = $('.top_menu_lvl2').children('.moremenu').offset().left; 83 if((lastVisLeft+lastVisWidth)>(moremenuLeft-30)) 84 { 85 var link = $('.top_menu_lvl2').children('.vis:last').children('a').attr('href'); 86 var text = $('.top_menu_lvl2').children('.vis:last').children('a').children('span').html(); 87 var newLink = '<a class="moremenu-link" href="' + link + '">
87' + text + '</a>'; 88 $('.moremenu-title').after( newLink ); 89 $('.top_menu_lvl2').children('.vis:last').addClass('vis_deadlink').removeClass('vis').hide(); 90 } 91} 92function CheckMoreItemsOnResizeShower() 93{ 94 var firstDeadWidth = $('.top_menu_lvl2').children('.vis_deadlink:first').outerWidth(); 95 var lastVisLeft = $('.top_menu_lvl2').children('.vis:last').offset().left; 96 var lastVisWidth = $('.top_menu_lvl2').children('.vis:last').outerWidth(); 97 var moremenuLeft = $('.top_menu_lvl2').children('.moremenu').offset().left; 98 if((moremenuLeft-lastVisLeft-lastVisWidth)>(firstDeadWidth+30)) 99 { 100 var link = $('.top_menu_lvl2').children('.vis_deadlink:first').children('a').attr('href'); 101 $('.moremenu-sub').find('a[href="'+link+'"]').remove(); 102 $('.top_menu_lvl2').children('.vis_deadlink:first').addClass('vis').removeClass('vis_deadlink').removeAttr('style'); 103 } 104} 105 106$(document).ready(function(){ 107 $('.vis').bind('mouseenter',function(){ 108 $(this).children('.submenu').show(); 109 $(this).addClass('vis-hovered'); 110 if($(this).children('.submenu').length>0) 111 { 112 var offsleft1 = $('.top_menu_lvl2').offset().left + $('.top_menu_lvl2').outerWidth(); 113 var offsleft2 = $(this).children('.submenu').offset().left + $(this).children('.submenu').outerWidth(); 114 if((offsleft2-1)>offsleft1) 115 { 116 $(this).children('.submenu').css('left','-'+(offsleft2-offsleft1)+'px'); 117 var titleOffset = $(this).offset().left-$(this).children('.submenu').children('.sblock-title').offset().left-1; 118 $(this).children('.submenu').children('.sblock-title').css('left', (titleOffset-1)+'px' ); 119 $(this).children('.submenu').addClass('already_moved'); 120 } 121 } 122 }); 123 $('.vis').bind('mouseleave',function(){ 124 $(this).children('.submenu').hide(); 125 $(this).removeClass('vis-hovered'); 126 }); 127 128 /* more links */ 129 $('.moremenu').live('mouseenter',function(){ 130 $(this).children('.moremenu-sub').show(); 131 $(this).addClass('moremenu-hovered'); 132 }); 133 $('.moremenu').live('mouseleave',function(){ 134 $(this).children('.moremenu-sub').hide(); 135 $(this).removeClass('moremenu-hovered'); 136 }); 137 138 CheckMoreItems(); 139 140 $(window).resize(function(){ 141 CheckMoreItemsOnResize(); 142 }); 143});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.