PageSourceSearch

https://medflow.sa/js/midnight.jquery.min.js

js medflow.sa collected 2026-10-02 02:07:05 UTC 4,645 bytes, 11 lines download raw bytes

1/*!
2 * Midnight.js 1.0.0
3 * jQuery plugin to switch between multiple fixed header designs on the fly, so it looks in line with the content below it.
4 * http://aerolab.github.io/midnight.js/
5 * 
6 * Copyright (c) 2014 Aerolab <[email protected]>
7 * 
8 * Released under the MIT license
9 * http://aerolab.github.io/midnight.js/LICENSE.txt
10 */
11 !function(e){e.fn.midnight=function(s){return"object"!=typeof s&&(s={}),this.each(function(){var t={headerClass:"midnightHeader",innerClass:"midnightInner",defaultClass:"default"};e.extend(t,s);var a=window.pageYOffset||document.documentElement.scrollTop,n=e(this),r={},o={top:0,height:n.outerHeight()},l=e("[data-midnight]"),d=[],f=function(){for(var e="transform WebkitTransform MozTransform OTransform msTransform".split(" "),s=0;s<e.length;s++)if(void 0!==document.createElement("div").style[e[s]])return e[s];return!1},h=f();if(0!=l.length){var m=function(){var s=n.find("> ."+t.headerClass),a=0,r=0;return s.length?s.each(function(){var s=e(this),n=s.find("> ."+t.innerClass);n.length?(n.css("bottom","auto"),r=n.outerHeight(),n.css("bottom","0")):(s.css("bottom","auto"),r=s.outerHeight(),s.css("bottom","0")),a=r>a?r:a}):a=r=n.outerHeight(),a},c=function(){o.height=m(),n.css("height",o.height+"px")},u=function(){r["default"]={},l.each(function(){var s=e(this),t=s.data("midnight");"string"==typeof t&&(t=t.trim(),""!==t&&(r[t]={}))});({top:n.css("padding-top"),right:n.css("padding-right"),bottom:n.css("padding-bottom"),left:n.css("padding-left")});n.css({position:"fixed",top:0,left:0,right:0,overflow:"hidden"}),c();var s=n.find("> ."+t.headerClass);s.length?s.filter("."+t.defaultClass).length||s.filter("."+t.headerClass+":first").clone(!0,!0).attr("class",t.headerClass+" "+t.defaultClass):n.wrapInner('<div class="'+t.headerClass+" "+t.defaultClass+'"></div>');var s=n.find("> ."+t.headerClass),a=s.filter("."+t.defaultClass).clone(!0,!0);for(headerClass in r)if("undefined"==typeof r[headerClass].element){var i=s.filter("."+headerClass);r[headerClass].element=i.length?i:a.clone(!0,!0).removeClass(t.defaultClass).addClass(headerClass).appendTo(n);var o={position:"absolute",overflow:"hidden",top:0,left:0,right:0,bottom:0};r[headerClass].element.css(o),h!==!1&&r[headerClass].element.css(h,"translateZ(0)"),r[headerClass].element.find("> ."+t.innerClass).length||r[headerClass].element.wrapInner('<div class="'+t.innerClass+'"></div>'),r[headerClass].inner=r[headerClass].element.find("> ."+t.innerClass),r[headerClass].inner.css(o),h!==!1&&r[headerClass].inner.css(h,"translateZ(0)"),r[headerClass].from="",r[headerClass].progress=0}s.each(function(){var s=e(this),a=!1;for(headerClass in r)s.hasClass(headerClass)&&(a=!0);s.find("> ."+t.innerClass).length||s.wrapInner('<div class="'+t.innerClass+'"></div>'),a||s.hide()})};u();var p=function(){for(d=[],i=0;i<l.length;i++){var s=e(l[i]);d.push({element:s,"class":s.data("midnight"),start:s.offset().top,end:s.offset().top+s.outerHeight()})}};setInterval(p,1e3);var g=function(){a=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop;var e=o.height,s=a+o.top,t=a+o.top+e;for(ix in r)r[ix].from="",r[ix].progress=0;for(ix in d)t>=d[ix].start&&s<=d[ix].end&&(r[d[ix].class].visible=!0,s>=d[ix].start&&t<=d[ix].end?(r[d[ix].class].from="top",r[d[ix].class].progress+=1):t>d[ix].end&&s<d[ix].end?(r[d[ix].class].from="top",r[d[ix].class].progress=1-(t-d[ix].end)/e):t>d[ix].start&&s<d[ix].start&&("top"===r[d[ix].class].from?r[d[ix].class].progress+=(t-d[ix].start)/e:(r[d[ix].class].from="bottom",r[d[ix].class].progress=(t-d[ix].start)/e)))},C=function(){var e=0,s="";for(ix in r)""!==!r[ix].from&&(e+=r[ix].progress,s=ix);1>e&&(""===r[t.defaultClass].from?(r[t.defaultClass].from="top"===r[s].from?"bottom":"top",r[t.defaultClass].progress=1-e):r[t.defaultClass].progress+=1-e);for(ix in r)if(""!==!r[ix].from){var a=100*(1-r[ix].progress);"top"===r[ix].from?h!==!1?(r[ix].element[0].style[h]="translateY(-"+a+"%) translateZ(0)",r[ix].inner[0].style[h]="translateY(+"+a+"%) translateZ(0)"):(r[ix].element[0].style.top="-"+a+"%",r[ix].inner[0].style.top="+"+a+"%"):h!==!1?(r[ix].element[0].style[h]="translateY(+"+a+"%) translateZ(0)",r[ix].inner[0].style[h]="translateY(-"+a+"%) translateZ(0)"):(r[ix].element.style.top="+"+a+"%",r[ix].inner.style.top="-"+a+"%")}};e(window).resize(function(){p(),c(),g(),C()}).trigger("resize"),requestAnimationFrame=window.requestAnimationFrame||function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(e){window.setTimeout(e,1e3/60)}}();var x=function(){requestAnimationFrame(x),g(),C()};x()}})}}(jQuery);

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.