Advertisement
thebys

ColorBox Customizace

Feb 28th, 2016
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
jQuery 3.29 KB | None | 0 0
  1. var position;
  2. /*Tahle funkce řeší kultivaci inicializaci a nastavení Colorboxu, který se stará o zobrazení detailu prací po kliknutí...
  3.  Prostě wannabe html javascript galerie hadr*/
  4. function ukazSkupinu(aProbohaCeho) {
  5.     /*Zjistime scrollpozici a bloknem scroll*/
  6.     position = $(document).scrollTop();
  7.     $('html').css({
  8.         overflow: 'hidden'
  9.     });
  10.  
  11.     /*necháme skřítky naformátovat a ukázat skrytý obsah*/
  12.     aProbohaCeho.find("div.hidden-desc").css({"display": "block"});
  13.     aProbohaCeho.find("span.hidden-title").css({"display": "inline-block"});
  14.     aProbohaCeho.css({"text-align": "center"});
  15.  
  16.     /*Prida, napozycuje a nastyluje zaviraci zlacitko*/
  17.     $("#cboxLoadedContent").append('<div id="cboxCustomCloseWrapper">' +
  18.         '<div id="cboxCustomClose" class="btn btn-dark btn-lg">' +
  19.         'Zavřít' + "</div></div>");
  20. }
  21. function schovejSkupinu(aProbohaCeho) {
  22.     /*schováme skřítky zobrazený obsah*/
  23.     aProbohaCeho.removeClass("cboxElement");
  24.     aProbohaCeho.find("div.hidden-desc").css({"display": "none"});
  25.     aProbohaCeho.find("span.hidden-title").css({"display": "none"});
  26.  
  27.     /*obnovíme scrollposition*/
  28.     $('html').css({
  29.         overflow: 'auto'
  30.     });
  31.     $("html,body").scrollTop(position);
  32.     /*zaznamenat stav Cboxu*/
  33.  
  34.     /*vycisti zaviraci tlacitko*/
  35.     $("#cboxCustomCloseWrapper").remove();
  36. }
  37. $(document).ready(function () {
  38.     /*event handling ukoncovaciho tlacitka colorboxu*/
  39.     $("#colorbox").on("click", "#cboxCustomClose", function () {
  40.         $.colorbox.close();
  41.     });
  42.  
  43.     /*kliknutí na obrázek galerie*/
  44.     $('div.item').click(function (event) {
  45.         /*Jedna řídící proměnná, která určí jestli můžeme zobrazovat nebo už máme zobrazeno*/
  46.         var jeCboxAktivni = false;
  47.         /*Skupina fotek, na jejíhož potomka bylo kliknuto*/
  48.         var skupinaFotek = $(this).parent();
  49.  
  50.         try {
  51.             /*Jestliže skupina nemá .cboxElement, můžeme ji zobrazit*/
  52.             jeCboxAktivni = skupinaFotek.attr("class").indexOf("cboxElement") > -1;
  53.         }
  54.         catch (err) {
  55.             jeCboxAktivni = false;
  56.         }
  57.         /*Jinak je aktivní Cbox a určitě ho nechceme restartovat, takže nic*/
  58.         /*pokud je cbox aktivní zastavíme rozjetý skřítky*/
  59.         if (jeCboxAktivni == true) {
  60.             event.stopImmediatePropagation();
  61.             event.preventDefault();
  62.             return false;
  63.         }
  64.         /*Pokud jsou vhodný podmínky a je co ukazovat, aktivujeme cbox*/
  65.         if ((skupinaFotek.attr("class") == "group-to-show-in-colorBox")) {
  66.             skupinaFotek.colorbox({
  67.                 inline: true,
  68.                 closeButton: false,
  69.                 href: $(this).parent(),
  70.                 width: "65%",
  71.                 height: "100%",
  72.                 top: 0,
  73.                 onComplete: function () {
  74.                     (ukazSkupinu(skupinaFotek));
  75.                 },
  76.                 onCleanup: function () {
  77.                     schovejSkupinu(skupinaFotek);
  78.                 }
  79.             });
  80.         }
  81.     });
  82.     /*Kliknutí na skrytý obrázek galerie*/
  83.     $('div.item-hidden').click(function (event) {
  84.         event.stopImmediatePropagation();
  85.         event.preventDefault();
  86.         return false;
  87.     });
  88. })
  89. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement