1/*! 2 * Collapse-O-Matic JavaSctipt v1.6.18 3 * http://plugins.twinpictures.de/plugins/collapse-o-matic/ 4 * 5 * Copyright 2019, Twinpictures 6 * 7 * Permission is hereby granted, free of charge, to any person obtaining a copy 8 * of this software and associated documentation files (the "Software"), to deal 9 * in the Software without restriction, including without limitation the rights 10 * to use, copy, modify, merge, publish, distribute, sublicense, blend, trade, 11 * bake, hack, scramble, difiburlate, digest and/or sell copies of the Software, 12 * and to permit persons to whom the Software is furnished to do so, subject to 13 * the following conditions: 14 * 15 * The above copyright notice and this permission notice shall be included in 16 * all copies or substantial portions of the Software. 17 * 18 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 * THE SOFTWARE. 25 */ 26function collapse_init() { 27 //force collapse 28 jQuery('.force_content_collapse').each(function(index) { 29 jQuery(this).css('display', 'none'); 30 }); 31 32 //inital collapse 33 jQuery('.collapseomatic:not(.colomat-close)').each(function(index) { 34 var thisid = jQuery(this).attr('id'); 35 jQuery('#target-'+thisid).css('display', 'none'); 36 }); 37 38 //inital swaptitle for pre-expanded elements 39 jQuery('.collapseomatic.colomat-close').each(function(index) { 40 var thisid = jQuery(this).attr('id'); 41 if(jQuery("#swap-"+thisid).length > 0){ 42 swapTitle(this, "#swap-"+thisid ); 43 } 44 if(jQuery("#swapexcerpt-"+thisid).length > 0){ 45 swapTitle("#excerpt-"+thisid, "#swapexcerpt-"+thisid); 46 } 47 jQuery('[id^=extra][id$='+thisid+']').each( function( index ){ 48 if(jQuery(this).data('swaptitle')){ 49 old_swap_title = jQuery(this).data('swaptitle'); 50 old_title = jQuery(this).html(); 51 jQuery(this).html(old_swap_title); 52 jQuery(this).data('swaptitle', old_title); 53 } 54 }); 55 }); 56} 57 58function swapTitle(origObj, swapObj){ 59 if(jQuery(origObj).prop("tagName") == 'IMG'){ 60 var origsrc = jQuery(origObj).prop('src'); 61 var swapsrc = jQuery(swapObj).prop('src'); 62 63 jQuery(origObj).prop('src',swapsrc); 64 jQuery(swapObj).prop('src',origsrc); 65 } 66 else{ 67 var orightml = jQuery(origObj).html(); 68 var swaphtml = jQuery(swapObj).html(); 69 70 jQuery(origObj).html(swaphtml); 71 jQuery(swapObj).html(orightml); 72 73 //is cufon involved? if so, do that thing 74 if(swaphtml.indexOf("<cufon") != -1){ 75 var trigelem = jQuery(this).get(0).tagName; 76 Cufon.replace(trigelem); 77 } 78 } 79} 80 81function toggleState (obj, id, maptastic, trig_id) { 82 //toggletarget class 83 //jQuery('[id^=target][id$='+id+']').toggleClass('colomat-targ-visable'); 84 85 if (maptastic && jQuery('[id^=target][id$='+id+']').hasClass('maptastic') ) { 86 jQuery('[id^=target][id$='+id+']').removeClass('maptastic'); 87 } 88 89 //reset effect and duration to default 90 com_effect = colomatslideEffect; 91 com_duration = colomatduration; 92 93 //effect override 94 if( obj.attr('data-animation_effect') ){ 95 com_effect = obj.attr('data-animation_effect'); 96 } 97 98 //duration override 99 if( obj.attr('data-duration') ){ 100 com_duration = obj.attr('data-duration'); 101 } 102 103 //if durration is a number, make it a number 104 if( isFinite(com_duration) ){ 105 com_duration = parseFloat(com_duration); 106 } 107 108 //slideToggle 109 if(com_effect == 'slideToggle'){ 110 //jQuery('[id^=target][id$='+id+']').slideToggle(com_duration, function() { 111 jQuery('#target-'+id).slideToggle(com_duration, function() { 112 // Animation complete. 113 if( jQuery(this).hasClass('colomat-inline') && jQuery(this).is(':visible') ){ 114 jQuery(this).css('display', 'inline'); 115 } 116 117 //deal with any findme links 118 if(trig_id && jQuery('#'+trig_id).is('.find-me.colomat-close')){ 119 //offset_top = jQuery('#find-'+trig_id).attr('name'); 120 offset_top = jQuery('#'+trig_id).attr('data-findme'); 121 122 if(!offset_top || offset_top == 'auto'){ 123 target_offset = jQuery('#'+trig_id).offset(); 124 offset_top = target_offset.top; 125 } 126 jQuery('html, body').animate({scrollTop:offset_top}, 500); 127 } 128 }); 129 } 130 //slideFade 131 else if(com_effect == 'slideFade'){ 132 jQuery('#target-'+id).animate({ 133 height: "toggle", 134 opacity: "toggle" 135 }, com_duration, function (){ 136 //Animation complete 137 if( jQuery(this).hasClass('colomat-inline') && jQuery(this).is(':visible') ){ 138 jQuery(this).css('display', 'inline'); 139 } 140 141 //deal with any findme links 142 if(trig_id && jQuery('#'+trig_id).is('.find-me.colomat-close')){ 143 //offset_top = jQuery('#find-'+trig_id).attr('name'); 144 offset_top = jQuery('#'+trig_id).attr('data-findme'); 145 146 if(!offset_top || offset_top == 'auto'){ 147 target_offset = jQuery('#'+trig_id).offset(); 148 offset_top = target_offset.top; 149 } 150 jQuery('html, body').animate({scrollTop:offset_top}, 500); 151 } 152 }); 153 } 154 155 //deal with google maps builder resize 156 if(jQuery('#'+id).hasClass('colomat-close')){ 157 jQuery('.google-maps-builder').each(function(index) { 158 map = jQuery(".google-maps-builder")[index]; 159 google.maps.event.trigger(map, 'resize'); 160 }); 161 } 162 163 //callback 164 if ( typeof colomat_callback != 'undefined' ) { 165 colomat_callback(); 166 } 167} 168 169function closeOtherGroups(rel){ 170 jQuery('.collapseomatic[rel!="' + rel +'"]').each(function(index) { 171 //add close class if open 172 if(jQuery(this).hasClass('colomat-expand-only') && jQuery(this).hasClass('colomat-close')){ 173 return; 174 } 175 if(jQuery(this).hasClass('colomat-close') && jQuery(this).attr('rel') !== undefined){ 176 jQuery(this).removeClass('colomat-close'); 177 var id = jQuery(this).attr('id'); 178 //remove parent highlight class 179 jQuery('#parent-'+id).removeClass('colomat-parent-highlight'); 180 181 //check if the title needs to be swapped out 182 if(jQuery("#swap-"+id).length > 0){ 183 swapTitle(this, "#swap-"+id); 184 } 185 186 //check if the excerpt needs to be swapped out 187 if(jQuery("#swapexcerpt-"+id).length > 0){ 188 swapTitle("#exerpt-"+id, "#swapexcerpt-"+id); 189 } 190 191 //external triggers
192 jQuery('[id^=extra][id$='+id+']').each( function( index ){ 193 if(jQuery(this).data('swaptitle')){ 194 old_swap_title = jQuery(this).data('swaptitle'); 195 old_title = jQuery(this).html(); 196 jQuery(this).html(old_swap_title); 197 jQuery(this).data('swaptitle', old_title); 198 } 199 }); 200 201 toggleState (jQuery(this), id, false, false); 202 203 //check if there are nested children that need to be collapsed 204 var ancestors = jQuery('.collapseomatic', '#target-'+id); 205 ancestors.each(function(index) { 206 jQuery(this).removeClass('colomat-close'); 207 var thisid = jQuery(this).attr('id'); 208 jQuery('#target-'+thisid).css('display', 'none'); 209 }) 210 } 211 }); 212} 213 214function closeOtherMembers(rel, id){ 215 jQuery('.collapseomatic[rel="' + rel +'"]').each(function(index) { 216 if(jQuery(this).hasClass('colomat-expand-only') && jQuery(this).hasClass('colomat-close')){ 217 return; 218 } 219 220 //add close class if open 221 if(jQuery(this).attr('id') != id && jQuery(this).hasClass('colomat-close') && jQuery(this).attr('rel') !== undefined){ 222 //collapse the element 223 jQuery(this).removeClass('colomat-close'); 224 var thisid = jQuery(this).attr('id'); 225 //remove parent highlight class 226 jQuery('#parent-'+thisid).removeClass('colomat-parent-highlight'); 227 228 //check if the title needs to be swapped out 229 if(jQuery("#swap-"+thisid).length > 0){ 230 swapTitle(this, "#swap-"+thisid); 231 } 232 233 //check if the excerpt needs to be swapped out 234 if(jQuery("#swapexcerpt-"+thisid).length > 0){ 235 swapTitle("#excerpt-"+thisid, "#swapexcerpt-"+thisid); 236 } 237 238 //external triggers 239 jQuery('[id^=extra][id$='+thisid+']').each( function( index ){ 240 if(jQuery(this).data('swaptitle')){ 241 old_swap_title = jQuery(this).data('swaptitle'); 242 old_title = jQuery(this).html(); 243 jQuery(this).html(old_swap_title); 244 jQuery(this).data('swaptitle', old_title); 245 } 246 }); 247 248 //check for snap-shut 249 if(!jQuery(this).hasClass('colomat-close') && jQuery(this).hasClass('snap-shut')){ 250 jQuery('#target-'+thisid).hide(); 251 } 252 else{ 253 toggleState (jQuery(this), thisid, false, false); 254 } 255 256 //check if there are nested children that need to be collapsed 257 var ancestors = jQuery('.collapseomatic', '#target-'+id); 258 ancestors.each(function(index) { 259 if(jQuery(this).hasClass('colomat-expand-only') && jQuery(this).hasClass('colomat-close')){ 260 return; 261 } 262 //deal with extra tirggers 263 var pre_id = id.split('-'); 264 if (pre_id[0].indexOf('extra') != '-1') { 265 //console.log('this is an extra trigger'); 266 pre = pre_id.splice(0, 1); 267 id = pre_id.join('-'); 268 269 //deal with any scroll to links from the Extra Collapse Trigger 270 if(jQuery(this).hasClass('scroll-to-trigger')){ 271 var target_offset = jQuery('#'+id).offset(); 272 offset_top = target_offset.top; 273 } 274 275 //deal with any scroll to links from the Title Trigger 276 if(jQuery('#'+id).hasClass('scroll-to-trigger')){ 277 offset_top = jQuery('#scrollonclose-'+id).attr('name'); 278 if (offset_top == 'auto') { 279 var target_offset = jQuery('#'+id).offset(); 280 offset_top = target_offset.top; 281 } 282 } 283 284 //toggle master trigger arrow 285 jQuery('#'+id).toggleClass('colomat-close'); 286 287 //toggle any other extra trigger arrows 288 jQuery('[id^=extra][id$='+id+']').toggleClass('colomat-close'); 289 } 290 291 if(jQuery(this).attr('id').indexOf('bot-') == '-1'){ 292 jQuery(this).removeClass('colomat-close'); 293 var thisid = jQuery(this).attr('id'); 294 //check if the title needs to be swapped out 295 if(jQuery("#swap-"+thisid).length > 0){ 296 swapTitle(this, "#swap-"+thisid); 297 } 298 //check if the excerpt needs to be swapped out 299 if(jQuery("#swapexcerpt-"+thisid).length > 0){ 300 swapTitle("#excerpt-"+thisid, "#swapexcerpt-"+thisid); 301 } 302 //external triggers 303 jQuery('[id^=extra][id$='+thisid+']').each( function( index ){ 304 if(jQuery(this).data('swaptitle')){ 305 old_swap_title = jQuery(this).data('swaptitle'); 306 old_title = jQuery(this).html(); 307 jQuery(this).html(old_swap_title); 308 jQuery(this).data('swaptitle', old_title); 309 } 310 }); 311 jQuery('#target-'+thisid).css('display', 'none'); 312 } 313 }) 314 } 315 }); 316} 317 318function colomat_expandall(loop_items){ 319 if (!loop_items){ 320 loop_items = jQuery('.collapseomatic:not(.colomat-close)'); 321 } 322 loop_items.each(function(index) { 323 jQuery(this).addClass('colomat-close'); 324 var thisid = jQuery(this).attr('id'); 325 jQuery('#parent-'+thisid).addClass('colomat-parent-highlight'); 326 327 if(jQuery("#swap-"+thisid).length > 0){ 328 swapTitle(this, "#swap-"+thisid); 329 } 330 331 if(jQuery("#swapexcerpt-"+thisid).length > 0){ 332 swapTitle("#excerpt-"+thisid, "#swapexcerpt-"+thisid); 333 } 334 335 //external triggers
336 jQuery('[id^=extra][id$='+thisid+']').each( function( index ){ 337 if(jQuery(this).data('swaptitle')){ 338 old_swap_title = jQuery(this).data('swaptitle'); 339 old_title = jQuery(this).html(); 340 jQuery(this).html(old_swap_title); 341 jQuery(this).data('swaptitle', old_title); 342 } 343 }); 344 345 toggleState(jQuery(this), thisid, false, false); 346 }); 347} 348 349function colomat_collapseall(loop_items){ 350 if (!loop_items){ 351 loop_items = jQuery('.collapseomatic.colomat-close'); 352 } 353 354 loop_items.each(function(index) { 355 if(jQuery(this).hasClass('colomat-expand-only') && jQuery(this).hasClass('colomat-close')){ 356 return; 357 } 358 359 jQuery(this).removeClass('colomat-close'); 360 var thisid = jQuery(this).attr('id'); 361 jQuery('#parent-'+thisid).removeClass('colomat-parent-highlight'); 362 363 if(jQuery("#swap-"+thisid).length > 0){ 364 swapTitle(this, "#swap-"+thisid); 365 } 366 367 if(jQuery("#swapexcerpt-"+thisid).length > 0){ 368 swapTitle("#excerpt-"+thisid, "#swapexcerpt-"+thisid); 369 } 370 371 //external triggers 372 jQuery('[id^=extra][id$='+thisid+']').each( function( index ){ 373 if(jQuery(this).data('swaptitle')){ 374 old_swap_title = jQuery(this).data('swaptitle'); 375 old_title = jQuery(this).html(); 376 jQuery(this).html(old_swap_title); 377 jQuery(this).data('swaptitle', old_title); 378 } 379 }); 380 381 toggleState(jQuery(this), thisid, false, false); 382 383 }); 384} 385 386 387jQuery(document).ready(function() { 388 //console.log(colomatduration, colomatslideEffect, colomatpauseInit); 389 com_binding = 'click'; 390 if (typeof colomattouchstart !== 'undefined' && colomattouchstart) { 391 com_binding = 'click touchstart'; 392 } 393 394 if (typeof colomatpauseInit !== 'undefined' && colomatpauseInit) { 395 init_pause = setTimeout(collapse_init, colomatpauseInit); 396 } 397 else{ 398 collapse_init(); 399 } 400 401 //jetpack infinite scroll catch-all 402 jQuery( document.body ).on( 'post-load', function () { 403 collapse_init(); 404 } ); 405 406 //Display the collapse wrapper... use to reverse the show-all on no JavaScript degredation. 407 jQuery('.content_collapse_wrapper').each(function(index) { 408 jQuery(this).css('display', 'inline'); 409 }); 410 411 //hover 412 jQuery(document).on({ 413 mouseenter: function(){ 414 //stuff to do on mouseover 415 jQuery(this).addClass('colomat-hover'); 416 }, 417 mouseleave: function(){ 418 //stuff to do on mouseleave 419 jQuery(this).removeClass('colomat-hover'); 420 }, 421 focusin: function(){ 422 //stuff to do on keyboard focus 423 jQuery(this).addClass('colomat-hover'); 424 }, 425 focusout: function(){ 426 //stuff to do on losing keyboard focus 427 jQuery(this).removeClass('colomat-hover'); 428 } 429 }, '.collapseomatic'); //pass the element as an argument to .on 430 431 //tabindex enter 432 jQuery(document).on('keypress','.collapseomatic', function(event) { 433 if (event.which == 13) { 434 event.currentTarget.click(); 435 }; 436 }); 437 438 //the main collapse/expand function 439 jQuery(document.body).on(com_binding, '.collapseomatic', function(event) { 440 var offset_top; 441 442 //alert('phones ringin dude'); 443 if(jQuery(this).hasClass('colomat-expand-only') && jQuery(this).hasClass('colomat-close')){ 444 return; 445 } 446 447 //highlander must be one 448 if(jQuery(this).attr('rel') && jQuery(this).attr('rel').indexOf('-highlander') != '-1' && jQuery(this).hasClass('must-be-one') && jQuery(this).hasClass('colomat-close')){ 449 return; 450 } 451 452 var id = jQuery(this).attr('id'); 453 454 //deal with any scroll to links 455 if(jQuery(this).hasClass('colomat-close') && jQuery(this).hasClass('scroll-to-trigger')){ 456 offset_top = jQuery('#scrollonclose-'+id).attr('name'); 457 if (offset_top == 'auto') { 458 var target_offset = jQuery('#'+id).offset(); 459 offset_top = target_offset.top; 460 } 461 } 462 463 var id_arr = id.split('-'); 464 465 //deal with extra tirggers 466 if (id_arr[0].indexOf('extra') != '-1') { 467 //console.log('this is an extra trigger'); 468 pre = id_arr.splice(0, 1); 469 id = id_arr.join('-'); 470 471 //deal with any scroll to links from the Extra Collapse Trigger 472 if(jQuery(this).hasClass('scroll-to-trigger')){ 473 var target_offset = jQuery('#'+id).offset(); 474 offset_top = target_offset.top; 475 } 476 477 //deal with any scroll to links from the Title Trigger 478 if(jQuery('#'+id).hasClass('scroll-to-trigger')){ 479 offset_top = jQuery('#scrollonclose-'+id).attr('name'); 480 if (offset_top == 'auto') { 481 var target_offset = jQuery('#'+id).offset(); 482 offset_top = target_offset.top; 483 } 484 } 485 486 //toggle master trigger arrow 487 jQuery('#'+id).toggleClass('colomat-close'); 488 489 //toggle any other extra trigger arrows
490 jQuery('[id^=extra][id$='+id+']').toggleClass('colomat-close'); 491 } 492 493 else if(id.indexOf('bot-') != '-1'){ 494 id = id.substr(4); 495 jQuery('#'+id).toggleClass('colomat-close'); 496 497 //deal with any scroll to links from the Internal Collapse Trigger 498 if(jQuery(this).hasClass('scroll-to-trigger')){ 499 var target_offset = jQuery('#'+id).offset(); 500 offset_top = target_offset.top; 501 } 502 503 //deal with any scroll to links from the Title Trigger 504 if(jQuery('#'+id).hasClass('scroll-to-trigger')){ 505 offset_top = jQuery('#scrollonclose-'+id).attr('name'); 506 if (offset_top == 'auto') { 507 var target_offset = jQuery('#'+id).offset(); 508 offset_top = target_offset.top; 509 } 510 } 511 } 512 else{ 513 jQuery(this).toggleClass('colomat-close'); 514 //toggle any extra triggers 515 jQuery('[id^=extra][id$='+id+']').toggleClass('colomat-close'); 516 } 517 518 //check if the title needs to be swapped out 519 if(jQuery("#swap-"+id).length > 0){ 520 swapTitle(jQuery('#'+id), "#swap-"+id); 521 } 522 523 //check if the excerpt needs to be swapped out 524 if(jQuery("#swapexcerpt-"+id).length > 0){ 525 swapTitle("#excerpt-"+id, "#swapexcerpt-"+id); 526 } 527 528 //external triggers 529 jQuery('[id^=extra][id$='+id+']').each( function( index ){ 530 if(jQuery(this).data('swaptitle')){ 531 old_swap_title = jQuery(this).data('swaptitle'); 532 old_title = jQuery(this).html(); 533 jQuery(this).html(old_swap_title); 534 jQuery(this).data('swaptitle', old_title); 535 } 536 }); 537 538 //add visited class 539 jQuery(this).addClass('colomat-visited'); 540 541 //toggle parent highlight class 542 var parentID = 'parent-'+id; 543 jQuery('#' + parentID).toggleClass('colomat-parent-highlight'); 544 545 //check for snap-shut 546 if(!jQuery(this).hasClass('colomat-close') && jQuery(this).hasClass('snap-shut')){ 547 jQuery('#target-'+id).hide(); 548 } 549 else{ 550 toggleState (jQuery(this), id, true, id); 551 } 552 553 //deal with grouped items if needed 554 if(jQuery(this).attr('rel') !== undefined){ 555 var rel = jQuery(this).attr('rel'); 556 if(rel.indexOf('-highlander') != '-1'){ 557 closeOtherMembers(rel, id); 558 } 559 else{ 560 closeOtherGroups(rel); 561 } 562 } 563 564 if(offset_top){ 565 jQuery('html, body').animate({scrollTop:offset_top}, 500); 566 } 567 }); 568 569 570 jQuery(document).on(com_binding, '.expandall', function(event) { 571 if(jQuery(this).attr('rel') !== undefined){ 572 var rel = jQuery(this).attr('rel'); 573 var loop_items = jQuery('.collapseomatic:not(.colomat-close)[rel="' + rel +'"]'); 574 } 575 else if(jQuery(this).attr('data-togglegroup') !== undefined){ 576 var toggroup = jQuery(this).attr('data-togglegroup'); 577 var loop_items = jQuery('.collapseomatic:not(.colomat-close)[data-togglegroup="' + toggroup +'"]'); 578 } 579 else{ 580 var loop_items = jQuery('.collapseomatic:not(.colomat-close)'); 581 } 582 583 colomat_expandall(loop_items); 584 }); 585 586 jQuery(document).on(com_binding, '.collapseall', function(event) { 587 if(jQuery(this).attr('rel') !== undefined){ 588 var rel = jQuery(this).attr('rel'); 589 var loop_items = jQuery('.collapseomatic.colomat-close[rel="' + rel +'"]'); 590 } 591 else if(jQuery(this).attr('data-togglegroup') !== undefined){ 592 var toggroup = jQuery(this).attr('data-togglegroup'); 593 var loop_items = jQuery('.collapseomatic.colomat-close[data-togglegroup="' + toggroup +'"]'); 594 } 595 else { 596 var loop_items = jQuery('.collapseomatic.colomat-close'); 597 } 598 599 colomat_collapseall(loop_items); 600 }); 601 602 //handle new page loads with anchor 603 var fullurl = document.location.toString(); 604 if (fullurl.match('#(?!\!)')) { 605 hashmaster(fullurl); 606 } 607 608 //handle no-link triggers within the same page 609 jQuery(document).on('click', 'a.colomat-nolink', function(event) { 610 event.preventDefault(); 611 }); 612 613 //manual hashtag changes in url 614 jQuery(window).on('hashchange', function (e) { 615 fullurl = document.location.toString(); 616 if (fullurl.match('#(?!\!)')) { 617 hashmaster(fullurl); 618 } 619 }); 620 621 //master url hash funciton 622 function hashmaster(fullurl){ 623 // the URL contains an anchor but not a hash-bang 624 if (fullurl.match('#(?!\!)')) { 625 // click the navigation item corresponding to the anchor 626 var anchor_arr = fullurl.split(/#(?!\!)/); 627 628 if(anchor_arr.length > 1){ 629 junk = anchor_arr.splice(0, 1); 630 anchor = anchor_arr.join('#'); 631 } 632 else{ 633 anchor = anchor_arr[0]; 634 } 635 636 if( jQuery('#' + anchor).length ){ 637 //expand any nested parents 638 jQuery('#' + anchor).parents('.collapseomatic_content').each(function(index) { 639 parent_arr = jQuery(this).attr('id').split('-'); 640 junk = parent_arr.splice(0, 1); 641 parent = parent_arr.join('-'); 642 if(!jQuery('#' + parent).hasClass('colomat-close')){ 643 jQuery('#' + parent).click(); 644 } 645 }) 646 //now expand the target anchor 647 if(!jQuery('#' + anchor).hasClass('colomat-close')){ 648 jQuery('#' + anchor).click(); 649 } 650 } 651 652 if(typeof colomatoffset !== 'undefined'){ 653 var anchor_offset = jQuery('#' + anchor).offset(); 654 colomatoffset = colomatoffset + anchor_offset.top; 655 jQuery('html, body').animate({scrollTop:colomatoffset}, 50); 656 } 657 658 } 659 } 660});
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.