PageSourceSearch

https://www.visa.de/etc.clientlibs/cms-rest/clientlibs/lazyloading-plugin.min.js

js visa.de collected 2026-10-02 03:26:15 UTC 2,895 bytes, 84 lines download raw bytes

1  
2  function initLazyLoading(){
3    var LAZY_CLASS = "vs-lazy";
4  var PLACEHOLDER_CLASS = "vs-img-placeholder";
5
6    /**
7     * Function to remove lazyness from an image. Puts data-src to src and removes vs-lazy class.
8     * @param {JqueryObject} lazyImage
9     */
10    var removeLazyness = function(lazyImage) {
11      let
12          src = lazyImage.attr("data-src"),
13          bgimage = lazyImage.attr("data-bgimage"),
14          video = lazyImage.is("video");
15
16      if (src) {
17        lazyImage.attr("src", src);
18        lazyImage.removeAttr("data-src");
19        lazyImage.removeClass(LAZY_CLASS);
20      }
21      if (bgimage) {
22        lazyImage.css('background-image','url('+bgimage+')');
23        lazyImage.removeAttr("data-bgimage");
24        lazyImage.removeClass(LAZY_CLASS);
25      }
26      if (video) {
27        let source = lazyImage.find("source");
28        src = source.attr("data-src");
29        source.attr("src", src);
30        var firstImage = $(lazyImage).get(0);
31        $(firstImage).trigger('load');
32        source.removeAttr("data-src");
33        lazyImage.removeClass(LAZY_CLASS);
34      }
35    }
36      let
37        allLazyImages = $("img." + LAZY_CLASS + "." + PLACEHOLDER_CLASS),
38        allLazyBgImages = $(".vs-bg-image." + LAZY_CLASS),
39        allLazyVideos = $("video." + LAZY_CLASS),
40
41        disabledLazyImages = $("[data-disable-lazyloading='true'] img." + LAZY_CLASS + "." + PLACEHOLDER_CLASS),
42        disabledBgLazyImages = $("[data-disable-lazyloading='true'] .vs-bg-image." + LAZY_CLASS),
43        disabledLazyVideos = $("[data-disable-lazyloading='true'] video." + LAZY_CLASS),
44        disabledLazyItems = $.merge($.merge(disabledLazyImages, disabledBgLazyImages ), disabledLazyVideos),
45
46        enabledLazyImages = allLazyImages.not(disabledLazyImages),
47        enabledBgLazyImages = allLazyBgImages.not(disabledBgLazyImages),
48        enabledLazyVideos = allLazyVideos.not(disabledLazyVideos),
49        enabledLazyItems = $.merge($.merge(enabledBgLazyImages, enabledLazyImages ), enabledLazyVideos);
50
51    // Remove lazyness of images with disabled lazy loading
52    disabledLazyItems.each(function() {
53      removeLazyness($(this));
54    });
55
56    if ("IntersectionObserver" in window && ('isIntersecting' in IntersectionObserverEntry.prototype)) {
57      var lazyImageObserver = new IntersectionObserver(function(entries, observer) {
58        entries.forEach(function(entry) {
59          var lazyImage = $(entry.target);
60          if (entry.isIntersecting) {
61            removeLazyness(lazyImage);
62            lazyImageObserver.unobserve(lazyImage[0]);
63          }
64        });
65      });
66
67      enabledLazyItems.each(function() {
68        lazyImageObserver.observe(this);
69      });
70
71    } else {
72      enabledLazyItems.inview({
73        inview: function() {
74          removeLazyness($(this));
75        }
76      });
77    }
78  
79    
80  }
81(function($) {
82  initLazyLoading();
83
84})(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.