1 2BX.ready(function(){ 3 /** 4 * РаÑкÑÑÑие закÑÑÑие ÑилÑÑÑов 5 */ 6 let filterblockNodeList = document.querySelectorAll(".sidebar .sidearea-block"); 7 if(filterblockNodeList.length > 0){ 8 for(let filterblockNode of filterblockNodeList){ 9 let titleNode = filterblockNode.querySelector(".sidearea-block-title"); 10 BX.bind(titleNode, "click", function(){ 11 let easing; 12 let actualBlock = this.closest(".sidearea-block"); 13 let contentblockNode = actualBlock.querySelector(".sidearea-block-content"); 14 if(BX.hasClass(actualBlock, "on")) 15 { 16 easing = new BX.easing({ 17 duration : 300, 18 start : { opacity: 1, height: contentblockNode.offsetHeight }, 19 finish : { opacity: 0, height:0 }, 20 transition : BX.easing.transitions.quart, 21 step : function(state){ 22 contentblockNode.style.opacity = state.opacity; 23 contentblockNode.style.height = state.height + "px"; 24 }, 25 complete : function() { 26 contentblockNode.setAttribute("style", ""); 27 BX.removeClass(actualBlock, "on"); 28 } 29 }); 30 easing.animate(); 31 }else{ 32 contentblockNode.style.display = "block"; 33 contentblockNode.style.opacity = 0; 34 contentblockNode.style.height = "auto"; 35 36 let obj_children_height = contentblockNode.offsetHeight; 37 contentblockNode.style.height = 0; 38 39 easing = new BX.easing({ 40 duration : 300, 41 start : { opacity: 0, height: 0 }, 42 finish : { opacity: 1, height: obj_children_height }, 43 transition : BX.easing.transitions.quart, 44 step : function(state){ 45 contentblockNode.style.opacity = state.opacity; 46 contentblockNode.style.height = state.height + "px"; 47 }, 48 complete : function() { 49 contentblockNode.setAttribute("style", ""); 50 } 51 }); 52 easing.animate(); 53 BX.addClass(actualBlock, "on"); 54 } 55 }) 56 } 57 } 58});
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.