1var RiotTagsUtils = { 2 detectIE: function () { 3 var ua = window.navigator.userAgent; 4 5 var msie = ua.indexOf('MSIE '); 6 if (msie > 0) { 7 // IE 10 or older => return version number 8 return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10); 9 } 10 11 var trident = ua.indexOf('Trident/'); 12 if (trident > 0) { 13 // IE 11 => return version number 14 var rv = ua.indexOf('rv:'); 15 return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10); 16 } 17 18 var edge = ua.indexOf('Edge/'); 19 if (edge > 0) { 20 // Edge (IE 12+) => return version number 21 return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10); 22 } 23 24 // other browser 25 return false; 26 } 27}; 28 29var RiotTagsMountIntObs = (typeof IntersectionObserver == 'undefined' || RiotTagsUtils.detectIE()) ? undefined : new IntersectionObserver(function(entries) { 30 for(ind in entries) { 31 if(entries[ind].isIntersecting) { 32 RiotTagsMountIntObs.unobserve(entries[ind].target) 33 if(jQuery(entries[ind].target).data('riot_options')) { 34 riot.mount(entries[ind].target, jQuery(entries[ind].target).data('riot_options')) 35 } 36 } 37 } 38}, {rootMargin: "80px 0px 80px 0px"}); 39 40var RiotTagsDispatch = { 41 lazyMount: function(element, options) { 42 if(typeof RiotTagsMountIntObs != 'undefined') { 43 jQuery(element).data('riot_options', options) 44 RiotTagsMountIntObs.observe(element) 45 } else { 46 riot.mount(element, options) 47 } 48 } 49}; 50 51(function() { 52 riot.observable(RiotTagsDispatch); 53})();
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.