1<!doctype html> 2<html lang="cs-CZ" prefix="og: http://ogp.me/ns#"> 3<head> 4<!-- Google Tag Manager -->
5<script type="text/plain" cookie-consent="tracking">
vendor: 327 bytes, lines 5-9
5(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 6new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 7j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 8'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 9})(window,document,'script','dataLayer','
9GTM-54744CK
vendor: 3 bytes, line 9
9');
9</script>
9 10<!-- End Google Tag Manager --> 11 12<!-- Meta Pixel Code -->
13<script>
vendor: 399 bytes, lines 13-22
13 14!function(f,b,e,v,n,t,s) 15{if(f.fbq)return;n=f.fbq=function(){n.callMethod? 16n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 17if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 18n.queue=[];t=b.createElement(e);t.async=!0; 19t.src=v;s=b.getElementsByTagName(e)[0]; 20s.parentNode.insertBefore(t,s)}(window, document,'script', 21'https://connect.facebook.net/en_US/fbevents.js'); 22fbq('init', '
221307386923204053
vendor: 30 bytes, lines 22-23
22'); 23fbq('track', 'PageView');
24</script>
24 25<noscript><img height="1" width="1" style="display:none" 26src="https://www.facebook.com/tr?id=1307386923204053&ev=PageView&noscript=1" 27/></noscript> 28<!-- End Meta Pixel Code --> 29 30<meta charset="UTF-8" /> 31<meta http-equiv="X-UA-Compatible" content="IE=edge" /> 32<meta name="viewport" content="width=device-width, initial-scale=1" /> 33<meta name="referrer" content="always" /> 34<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon_olomouc.png"> 35<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32_olomouc.png"> 36<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16_olomouc.png"> 37<link rel="manifest" href="/site_olomouc.webmanifest"> 38<link rel="mask-icon" href="/safari-pinned-tab_olomouc.svg" color="#5bbad5"> 39<meta name="msapplication-TileColor" content="#da532c"> 40<meta name="theme-color" content="#ffffff"> 41<title>Kultura - OLOMOUC.CZ</title> 42<meta name="description" content="Aktuálnà zprávy z olomouckého regionu - zprávy z regionu, kultura, sport, krimi, zajÃmavosti a tipy" /> 43<link rel="stylesheet" type="text/css" media="all" href="https://www.olomouc.cz/css/normalize.min.css" /> 44<link rel="stylesheet" type="text/css" media="all" href="https://www.olomouc.cz/css/style_220.css?9" /> 45<link rel="stylesheet" type="text/css" media="all" href="https://www.olomouc.cz/css/devices_120.css?2" /> 46<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,400i,700,700i,800&subset=latin-ext" /> 47<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,400i,700,700i,800&subset=latin-ext" /> 48<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Oswald&subset=latin-ext" />
49<script src="https://www.olomouc.cz/js/jquery-3.7.1.min.js"></script>
49 50<link rel="stylesheet" type="text/css" href="https://www.olomouc.cz/css/jquery.fancybox.css" />
51<script src="https://www.olomouc.cz/js/jquery.fancybox.min.js"></script>
51 52
52<script type="text/javascript"> 53 54 $(document).ready(function () { 55 56 $("[data-fancybox]").fancybox({ 57 lang : 'cs', 58 toolbar: "true", 59 idleTime: 25, 60 i18n : { 61 'en' : { 62 CLOSE : 'Close', 63 NEXT : 'Next', 64 PREV : 'Previous', 65 ERROR : 'The requested content cannot be loaded. <br/> Please try again later.', 66 PLAY_START : 'Start slideshow', 67 PLAY_STOP : 'Pause slideshow', 68 FULL_SCREEN : 'Full screen', 69 THUMBS : 'Thumbnails', 70 DOWNLOAD : 'Download', 71 SHARE : 'Share', 72 ZOOM : 'Zoom' 73 }, 74 'cs' : { 75 CLOSE : 'ZavÅÃt', 76 NEXT : 'DalÅ¡Ã', 77 PREV : 'PÅedchozÃ', 78 ERROR : 'Požadovaný obsah nelze naÄÃst. <br /> Zkuste to prosÃm pozdÄji.', 79 PLAY_START : 'Spustit slideshow', 80 PLAY_STOP : 'Zastavit slideshow', 81 FULL_SCREEN : 'Na celou stránku', 82 THUMBS : 'Náhledy', 83 DOWNLOAD : 'Stáhnout', 84 SHARE : 'SdÃlet', 85 ZOOM : 'Zoom' 86 } 87 }, 88 helpers: { 89 overlay: { 90 locked: false 91 } 92 } 93 }); 94 95 }); 96 97 </script>
vendor: 1 bytes, line 97
97
98<script type="text/javascript" src="https://www.olomouc.cz/js/basic_05.js"></script>
vendor: 1 bytes, line 98
98
99<script src="https://www.olomouc.cz/ad/script2_test.php"></script>
vendor: 1 bytes, line 99
99
100<script type="text/javascript" src="https://www.olomouc.cz/js/sticksy.min.js"></script>
100 101 <!-- Cookie Consent --> 102
102<script type="text/javascript" src="https://www.termsfeed.com/public/cookie-consent/4.0.0/cookie-consent.js" charset="UTF-8"></script>
102 103
103<script type="text/javascript" charset="UTF-8"> 104 document.addEventListener('DOMContentLoaded', function () { 105 cookieconsent.run({"notice_banner_type":"simple","consent_type":"express","palette":"light","language":"cs","page_load_consent_levels":["strictly-necessary"],"notice_banner_reject_button_hide":true,"preferences_center_close_button_hide":false,"page_refresh_confirmation_buttons":false,"website_privacy_policy_url":"https://policies.google.com/technologies/cookies"}); 106 }); 107 </script>
107 108<meta property="fb:app_id" content="245580882228798" /> 109<meta property="fb:admins" content="1198952971" /> 110<meta property="fb:pages" content="656604737704726" /> 111<meta property="og:url" content="https://www.olomouc.cz/zpravy/kultura" /> 112<meta property="og:locale" content="cs_CZ" /> 113<meta property="og:type" content="website" /> 114<meta property="og:title" content="Kultura - OLOMOUC.CZ" /> 115<meta property="og:description" content="Aktuálnà zprávy z olomouckého regionu - zprávy z regionu, kultura, sport, krimi, zajÃmavosti a tipy" /> 116<link rel="image_src" href="https://www.olomouc.cz/images/www-olomouc-cz_logo_fb2015.jpg" /> 117<meta property="og:image" content="https://www.olomouc.cz/images/www-olomouc-cz_logo_fb2015.jpg" /> 118</head> 119<body> 120<main class="main"> 121<div id="fb-root"></div>
122<script>(function(d, s, id) { 123var js, fjs = d.getElementsByTagName(s)[0]; 124if (d.getElementById(id)) return; 125js = d.createElement(s); js.id = id; 126js.src = "//connect.facebook.net/cs_CZ/sdk.js#xfbml=1&version=v2.7"; 127fjs.parentNode.insertBefore(js, fjs); 128}(document, 'script', 'facebook-jssdk'));</script>
128 129<div class="cart"> 130<header> 131<div class="container"> 132<div id="adTopBox" style="z-index: 9999;"> 133<div class="adCounter"><span id="jsad_timer_time_61"></span></div> 134<div class="adReklama">Reklama</div> 135<div class="cb"></div> 136<div id="jsad_pozice_61"></div>
137<script> 138ADSystem.load(); 139</script>
139 140</div>
141<script> 142 143function onScroll(){ 144 var getPageYOffset = function getPageYOffset() { return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;}; 145 if(getPageYOffset()>=stop) { 146 stickyElem.style.position = "fixed"; 147 stickyElem.style.top = "0"; 148 stickyElem.style.background = "#ffffff"; 149 stickyElem.style.zIndex = "99999"; 150 } else { 151 stickyElem.style.position = "relative"; 152 stickyElem.style.top = "initial"; 153 stickyElem.style.background = "#eaeaea"; 154 stickyElem.style.zIndex = "9999"; 155 } 156} 157 158 var stickyElem = document.querySelector("#adTopBox"), 159 stop = stickyElem.offsetHeight, 160 docBody = document.documentElement || document.body.parentNode || document.body, 161 hasOffset = window.pageYOffset !== undefined, 162 scrollTop; 163 164 if (window.innerWidth < 1060) { 165 document.body.style.overflowX = "clip"; 166 $(document.body).on('touchmove',onScroll); 167 $(window).on('scroll',onScroll); 168 } 169</script>
169<link rel="stylesheet" type="text/css" media="all" href="https://www.olomouc.cz/css/navbar.css?4" /> 170<nav class="modern-navbar" aria-label="Hlavnà navigace"> 171 <input type="checkbox" id="mobile-toggle" class="mobile-toggle-cb"> 172 <div class="modern-navbar-container"> 173 <div class="modern-navbar-logo"> 174 <a href="https://www.olomouc.cz/"> 175 <img class="logo-main" src="https://www.olomouc.cz/images/logo_bile.svg" alt="Olomouc.cz"> 176 <img class="logo-sticky" src="https://www.olomouc.cz/images/logo_bar.png" alt="Olomouc.cz"> 177 </a> 178 </div> 179 <div class="modern-navbar-center"> 180 <div class="modern-navbar-date"> 181 <p class="datum"><strong>Pátek 2. ÅÃjna 2026</strong><i>,</i> <span>svátek má <em>OlÃvie</em> 182 <svg class="weather-icon" viewBox="0 0 24 24"><path d="M15 13V5c0-1.66-1.34-3-3-3S9 3.34 9 5v8c-1.21.91-2 2.37-2 4 0 2.76 2.24 5 5 5s5-2.24 5-5c0-1.63-.79-3.09-2-4zm-4-8c0-.55.45-1 1-1s1 .45 1 1v3h-2V5z"/></svg> 183 <em> 19.9 °C</em></span></p> 184 </div> 185 <ul class="modern-navbar-menu" id="priority-menu"> 186 <li class="modern-navbar-item reusable-dropdown"> 187 <button type="button" class="modern-navbar-link reusable-dropdown-toggle" aria-haspopup="true" aria-expanded="false">Zprávy</button> 188 <ul class="reusable-dropdown-menu"> 189 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/zpravy/" class="modern-navbar-link">Nové zprávy</a></li> 190 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/zpravy/publicistika" class="modern-navbar-link">Rozhovory</a></li> 191 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/zpravy/kultura" class="modern-navbar-link">Kultura</a></li> 192 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/zpravy/sport" class="modern-navbar-link">Sport</a></li> 193 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/#nejctenejsi" class="modern-navbar-link">NejÄtenÄjšà Älánky</a></li> 194 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/pocasi" class="modern-navbar-link">PoÄasÃ</a></li> 195 </ul> 196 </li> 197 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/katalog" class="modern-navbar-link">Katalog firem</a></li> 198 <li class="modern-navbar-item reusable-dropdown"> 199 <button type="button" class="modern-navbar-link reusable-dropdown-toggle" aria-haspopup="true" aria-expanded="false">Dennà menu</button> 200 <ul class="reusable-dropdown-menu"> 201 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/poledni-menu" class="modern-navbar-link">Polednà menu</a></li> 202 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/snidane" class="modern-navbar-link">SnÃdanÄ</a></li> 203 </ul> 204 </li> 205 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/akce-kalendar" class="modern-navbar-link">KalendáŠakcÃ</a></li> 206 <li class="modern-navbar-item reusable-dropdown"> 207 <button type="button" class="modern-navbar-link reusable-dropdown-toggle" aria-haspopup="true" aria-expanded="false">Rubriky</button> 208 <ul class="reusable-dropdown-menu"> 209 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/gastronomie" class="modern-navbar-link">Gastronomie</a></li> 210 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/kdo-je-kdo" class="modern-navbar-link">Kdo je kdo</a></li> 211 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/bydleni" class="modern-navbar-link">BydlenÃ</a></li> 212 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/liga-uspesnych" class="modern-navbar-link">Liga úspÄÅ¡ných</a></li> 213 </ul> 214 </li> 215 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/kamera" class="modern-navbar-link">Kamera</a></li> 216 <li class="modern-navbar-item"><a href="https://www.olomouc.cz/kontakty" class="modern-navbar-link">Kontakty</a></li> 217 <li class="modern-navbar-item reusable-dropdown" id="priority-more" style="display: none;"> 218 <button type="button" class="modern-navbar-link reusable-dropdown-toggle" aria-haspopup="true" aria-expanded="false">DalÅ¡Ã</button> 219 <ul class="reusable-dropdown-menu" id="priority-dropdown"> 220 </ul> 221 </li> 222 </ul> 223 </div> 224 <div class="site-search-component"> 225 <input type="checkbox" id="site-search-toggle" class="site-search-toggle-cb"> 226 <button type="button" class="site-search-btn" aria-expanded="false" aria-controls="site-search-box" aria-label="OtevÅÃt vyhledávánÃ"> 227 <svg viewBox="0 0 24 24" class="site-search-icon"> 228 <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/> 229 </svg> 230 </button> 231 <div class="site-search-dropdown" id="site-search-box"> 232 <form action="https://www.olomouc.cz/hledat" method="get" class="site-search-form"> 233 <input type="text" name="q" placeholder="Hledat..." class="site-search-input" required> 234 <button type="submit" class="site-search-submit-btn">Hledat</button> 235 </form> 236 </div> 237 </div> 238 <button type="button" class="mobile-hamburger-btn" aria-expanded="false" aria-controls="priority-menu" aria-label="OtevÅÃt menu">
239 <span></span> 240 <span></span> 241 <span></span> 242 </button> 243 </div> 244</nav> 245<div class="navbar-placeholder"></div> 246</div></header>
246<script> 247/* ========================================================================== 248 NAVIGAÄNà LIÅ TA OLOMOUC.CZ â menu.js 249 Párový soubor: navbar.css (vzhled, design tokeny, breakpoint). 250 251 CO TENTO SKRIPT DÄLÃ: 252 1. Priority+ menu â položky, které se nevejdou do liÅ¡ty, pÅesouvá do âDalÅ¡Ã". 253 2. PÅesuny prvků mezi desktopem a mobilem (Åádek s datem, vyhledávánÃ). 254 3. Sticky liÅ¡tu (tÅÃda navbar-is-sticky na <body> + výška placeholderu). 255 4. Rozbalovánà pod-menu a vyhledávánà vÄetnÄ ovládánà klávesnicÃ. 256 5. Mobilnà menu: zámek scrollu, inert pro obsah stránky, správa fokusu. 257 258 ARCHITEKTONICKà INVARIANTY (neporuÅ¡ovat pÅi úpravách): 259 ⢠Breakpoint mobil/desktop existuje JEN v navbar.css (--navbar-mode); 260 tento skript ho výhradnÄ Äte pÅes isMobile(). Nikdy sem nepsat 261 window.innerWidth <= 768 apod. 262 ⢠V update() musà pÅesuny prvků (positionDateRow, positionSearch) 263 probÄhnout PÅED adaptMenu() â mÄÅenà menu pÅedpokládá, že v nÄm 264 na desktopu nenà vyhledávacà formuláÅ. 265 ⢠OtevÅené stavy vyhledávánà a mobilnÃho menu nesou checkboxy v HTML 266 (#site-search-toggle, #mobile-toggle); CSS na nÄ reaguje pÅes :checked. 267 Checkboxy pÅepÃná VÃHRADNÄ tento skript (tlaÄÃtka lupy a hamburgeru, 268 closeSearch, closeMobileMenu) â každé pÅepnutà musà projÃt funkcemi, 269 které provedou i doprovodné efekty (aria, fokus, scroll, inert). 270 271 PODPORA PROHLÃŽEÄÅ®: aktuálnà evergreen (ResizeObserver, optional 272 chaining, atribut inert â vÅ¡e základna od roku 2022). 273 ========================================================================== */ 274 275document.addEventListener('DOMContentLoaded', function () { 276 277 // --- Reference na prvky (jednou, na jednom mÃstÄ) --- 278 const menu = document.getElementById('priority-menu'); 279 const moreLi = document.getElementById('priority-more'); 280 const dropdown = document.getElementById('priority-dropdown'); 281 const navbar = document.querySelector('.modern-navbar'); 282 const headerEl = navbar ? (navbar.closest('header') || navbar.parentElement) : null; 283 const placeholder = document.querySelector('.navbar-placeholder'); 284 const dateRow = document.querySelector('.modern-navbar-date'); 285 const centerCol = document.querySelector('.modern-navbar-center'); 286 const searchForm = document.querySelector('.site-search-form'); 287 const searchHome = document.querySelector('.site-search-dropdown'); 288 const searchInput = document.querySelector('.site-search-input'); 289 const searchCb = document.getElementById('site-search-toggle'); 290 const searchBtn = document.querySelector('.site-search-btn'); 291 const mobileCb = document.getElementById('mobile-toggle'); 292 const hamburger = document.querySelector('.mobile-hamburger-btn'); 293 294 if (!menu || !moreLi || !dropdown || !navbar) return; 295 296 // Režim liÅ¡ty se Äte z CSS â jediný zdroj pravdy pro breakpoint. 297 function isMobile() { 298 return getComputedStyle(document.documentElement) 299 .getPropertyValue('--navbar-mode').trim() === 'mobile'; 300 } 301 302 /* ====================================================================== 303 1. PRIORITY+ MENU 304 Princip: Å¡ÃÅky položek se zmÄÅà jednÃm průchodem a bod Åezu se 305 spoÄÃtá aritmeticky. PoužÃvajà se subpixelové Å¡ÃÅky 306 (getBoundingClientRect) â celoÄÃselný offsetWidth by po seÄtenà 307 sedmi položek nadhodnotil potÅebné mÃsto až o ~8 px. 308 ====================================================================== */ 309 310 // Cache hodnot stálých za bÄhu; invaliduje se po naÄtenà webfontů. 311 let cacheMenuGap = null; // mezera mezi položkami (--menu-gap) 312 let cacheMoreW = null; // Å¡ÃÅka tlaÄÃtka âDalÅ¡Ã" 313 314 function resetMenu() { 315 // Vrátà položky z âDalÅ¡Ã" zpÄt do liÅ¡ty; poÅadà zůstává zachované. 316 while (dropdown.children.length > 0) { 317 menu.insertBefore(dropdown.firstElementChild, moreLi); 318 } 319 // PÅepÃnaÄe vrácené do liÅ¡ty jsou zase plnohodnotná tlaÄÃtka. 320 menu.querySelectorAll('.reusable-dropdown-toggle[tabindex="-1"]').forEach(t => { 321 t.removeAttribute('tabindex'); 322 t.removeAttribute('aria-hidden'); 323 }); 324 } 325 326 // PÅepÃnaÄ kategorie pÅesunuté do âDalÅ¡Ã" se v CSS mÄnà na neklikacà 327 // nadpis skupiny (pointer-events: none). To ale platà jen pro myÅ¡ â 328 // z poÅadà tabulátoru a od ÄteÄek ho odstraÅujà tyto atributy. 329 function demoteTogglesInDropdown() { 330 dropdown.querySelectorAll('.reusable-dropdown-toggle').forEach(t => { 331 t.setAttribute('tabindex', '-1'); 332 t.setAttribute('aria-hidden', 'true'); 333 }); 334 } 335 336 function adaptMenu() { 337 // Na mobilu priority+ nebÄžà â kompletnà menu zobrazuje hamburger. 338 if (isMobile()) { 339 resetMenu(); 340 moreLi.style.display = 'none'; 341 return; 342 } 343 344 resetMenu(); 345 moreLi.style.display = 'none'; 346 347 if (cacheMenuGap === null) { 348 cacheMenuGap = parseFloat(getComputedStyle(menu).columnGap
348) || 0; 349 } 350 const items = Array.from(menu.children) 351 .filter(ch => ch !== moreLi && ch.tagName === 'LI'); 352 const widths = items.map(li => li.getBoundingClientRect().width); 353 const available = menu.getBoundingClientRect().width; 354 355 // Vejde se vÅ¡echno? âDalÅ¡Ã" zůstává skrytá. 356 const gaps = cacheMenuGap * Math.max(items.length - 1, 0); 357 const total = widths.reduce((a, b) => a + b, 0) + gaps; 358 if (total <= available) return; 359 360 // Nevejde se: zmÄÅit âDalÅ¡Ã" (jen poprvé) a spoÄÃtat bod Åezu. 361 if (cacheMoreW === null) { 362 moreLi.style.visibility = 'hidden'; // zmÄÅenà bez bliknutà 363 moreLi.style.display = 'flex'; 364 cacheMoreW = moreLi.getBoundingClientRect().width; 365 moreLi.style.visibility = ''; 366 } else { 367 moreLi.style.display = 'flex'; 368 } 369 370 const SLACK = 1; // rezerva proti kmitánà na hranÄ pÅesného vejità 371 let used = cacheMoreW; 372 let fits = 0; 373 for (let i = 0; i < items.length; i++) { 374 const next = used + cacheMenuGap + widths[i]; 375 if (next <= available - SLACK) { used = next; fits++; } 376 else break; 377 } 378 379 // PÅebytek do âDalÅ¡Ã" â odzadu, aby poÅadà zůstalo zachované. 380 for (let i = items.length - 1; i >= fits; i--) { 381 dropdown.prepend(items[i]); 382 } 383 384 if (dropdown.children.length === 0) { 385 moreLi.style.display = 'none'; 386 } 387 demoteTogglesInDropdown(); 388 } 389 390 /* ====================================================================== 391 2. PÅESUNY PRVKÅ® MEZI DESKTOPEM A MOBILEM 392 Na mobilu: Åádek s datem pod liÅ¡tu, vyhledávacà formuláŠdo menu. 393 Na desktopu obojà zpÄt na původnà mÃsto. 394 ====================================================================== */ 395 396 function positionDateRow() { 397 if (!dateRow || !centerCol) return; 398 if (isMobile()) { 399 if (navbar.contains(dateRow)) navbar.after(dateRow); 400 } else { 401 if (!centerCol.contains(dateRow)) centerCol.prepend(dateRow); 402 } 403 } 404 405 function positionSearch() { 406 if (!searchForm || !searchHome) return; 407 if (isMobile()) { 408 if (!menu.contains(searchForm)) menu.prepend(searchForm); 409 } else { 410 if (!searchHome.contains(searchForm)) searchHome.prepend(searchForm); 411 } 412 } 413 414 /* ====================================================================== 415 3. HLAVNà AKTUALIZACE + POZOROVÃNà ZMÄN Å ÃÅKY 416 ResizeObserver na prostÅednÃm sloupci reaguje na jakoukoli zmÄnu 417 jeho Å¡ÃÅky (okno, breakpointy starého webu, zobrazenà scrollbaru). 418 NaÄtenà webfontů Å¡ÃÅku sloupce nezmÄnÃ, ale zmÄnà šÃÅky textů â 419 proto samostatné pÅemÄÅenà pÅes document.fonts.ready. 420 ====================================================================== */ 421 422 function update() { 423 // INVARIANT: pÅesuny prvků pÅed mÄÅenÃm menu (viz hlaviÄka souboru). 424 positionDateRow(); 425 positionSearch(); 426 427 // Návrat z mobilu s otevÅeným menu: zavÅÃt a uklidit (scroll, inert). 428 if (!isMobile() && mobileCb && mobileCb.checked) { 429 closeMobileMenu({ returnFocus: false }); 430 } 431 432 adaptMenu(); 433 stickyTrigger = null; // výška obsahu nad liÅ¡tou se mohla zmÄnit 434 } 435 436 let lastW = -1; 437 new ResizeObserver(entries => { 438 const w = Math.round(entries[0].contentRect.width); 439 if (w === lastW) return; // ochrana proti smyÄce z vlastnÃch pÅesunů 440 lastW = w; 441 update(); 442 }).observe(centerCol); 443 444 if (document.fonts && document.fonts.ready) { 445 document.fonts.ready.then(function () { 446 cacheMenuGap = null; 447 cacheMoreW = null; 448 adaptMenu(); 449 }); 450 } 451 452 /* ====================================================================== 453 4. STICKY LIÅ TA 454 Bod pÅepnutà se poÄÃtá v souÅadnicÃch dokumentu a lÃnÄ: dokud liÅ¡ta 455 nenà pÅilepená, Äte se z jejà skuteÄné pozice; po pÅilepenà držà 456 poslednà hodnotu (v toku ji zastupuje placeholder). Placeholder 457 dostává pÅesnou výšku liÅ¡ty inline â výška je promÄnlivá kvůli 458 zalamovánà nápisu s datem. 459 ====================================================================== */ 460 461 let stickyTrigger = null; 462 463 function setSticky(on) { 464 const was = document.body.classList.contains('navbar-is-sticky'); 465 if (on === was) return; 466 if (on) { 467 if (placeholder) { 468 placeholder.style.height = navbar.getBoundingClientRect().height + 'px'; 469 } 470 document.body.classList.add('navbar-is-sticky'); 471 } else { 472 document.body.classList.remove('navbar-is-sticky'); 473 if (placeholder) placeholder.style.height = ''; 474 } 475 } 476 477 function handleStickyNav() { 478 if (isMobile()) { 479 setSticky(false); 480 stickyTrigger = null; 481 return; 482 } 483 const stuck = document.body.classList.contains('navbar-is-sticky'); 484 if (!stuck) { 485 // LiÅ¡ta je v toku dokumentu â pozice platÃ. 486 stickyTrigger = navbar.getBoundingClientRect().top + window.pageYOffset; 487 } else if (stickyTrigger === null && placeholder) {
488 // Obnova po resize ve sticky stavu â mÃsto liÅ¡ty držà placeholder. 489 stickyTrigger = placeholder.getBoundingClientRect().top + window.pageYOffset; 490 } 491 setSticky(window.pageYOffset > (stickyTrigger || 0)); 492 } 493 494 window.addEventListener('scroll', handleStickyNav, { passive: true }); 495 496 /* ====================================================================== 497 5. ROZBALOVACà POD-MENU 498 ====================================================================== */ 499 function closeAllDropdowns() { 500 menu.querySelectorAll('.reusable-dropdown.is-open').forEach(dd => { 501 dd.classList.remove('is-open'); 502 dd.querySelector('.reusable-dropdown-toggle') 503 ?.setAttribute('aria-expanded', 'false'); 504 }); 505 } 506 507 // Klikacà chovánà â aktivnà pouze v mobilnÃm režimu 508 menu.querySelectorAll('.reusable-dropdown-toggle').forEach(toggle => { 509 toggle.addEventListener('click', function (event) { 510 if (!isMobile()) return; // Na desktopu potlaÄeno, ÅÃzeno hoverem 511 event.stopPropagation(); 512 const item = this.closest('.reusable-dropdown'); 513 const wasOpen = item.classList.contains('is-open'); 514 closeAllDropdowns(); 515 if (!wasOpen) { 516 item.classList.add('is-open'); 517 this.setAttribute('aria-expanded', 'true'); 518 } 519 }); 520 }); 521 522 // Hover chovánà â aktivnà pouze v desktopovém režimu (využÃvá isMobile()) 523 menu.querySelectorAll('.reusable-dropdown').forEach(item => { 524 const toggle = item.querySelector('.reusable-dropdown-toggle'); 525 526 item.addEventListener('mouseenter', function () { 527 if (isMobile()) return; 528 item.classList.add('is-open'); 529 toggle?.setAttribute('aria-expanded', 'true'); 530 }); 531 532 item.addEventListener('mouseleave', function () { 533 if (isMobile()) return; 534 item.classList.remove('is-open'); 535 toggle?.setAttribute('aria-expanded', 'false'); 536 }); 537 }); 538 539 /* ====================================================================== 540 6. VYHLEDÃVÃNà 541 OtevÅený stav nese checkbox (CSS pÅes :checked zobrazuje box); 542 pÅepÃná ho tlaÄÃtko lupy. Skript doplÅuje aria stavy a fokus: 543 do pole po otevÅenÃ, zpÄt na lupu po zavÅenà Escapem. 544 ====================================================================== */ 545 546 function syncSearchState() { 547 const open = !!(searchCb && searchCb.checked); 548 if (searchBtn) { 549 searchBtn.setAttribute('aria-expanded', String(open)); 550 searchBtn.setAttribute('aria-label', 551 open ? 'ZavÅÃt vyhledávánÃ' : 'OtevÅÃt vyhledávánÃ'); 552 } 553 if (open && searchInput) searchInput.focus(); 554 } 555 556 function closeSearch(returnFocus) { 557 if (!searchCb || !searchCb.checked) return; 558 searchCb.checked = false; 559 syncSearchState(); 560 if (returnFocus) searchBtn?.focus(); 561 } 562 563 if (searchBtn && searchCb) { 564 // Lupa je <button> â Enter i mezernÃk aktivujà click nativnÄ. 565 searchBtn.addEventListener('click', function () { 566 searchCb.checked = !searchCb.checked; 567 syncSearchState(); 568 }); 569 } 570 571 /* ====================================================================== 572 7. MOBILNà MENU 573 OtevÅené menu je modálnÃ: stránka pod nÃm nescrolluje a je inert 574 (mimo dosah klávesnice i ÄteÄky). inert dostávajà pÅÃmà potomci 575 <body> KROMÄ hlaviÄky s liÅ¡tou â nikdy ne pÅedek menu Äi hamburgeru. 576 577 Cesty zavÅenà (vÅ¡echny musà uklidit scroll + inert + fokus): 578 ⢠hamburger (click), 579 ⢠Escape, 580 ⢠klik na odkaz v menu, 581 ⢠pÅechod z mobilu na desktop (Åešà update()). 582 ====================================================================== */ 583 584 let inertElements = []; 585 let savedInertStates = new Map(); 586 let savedBodyOverflow = ''; 587 588 function setPageInert(on) { 589 if (on) { 590 // Průchod od navigace nahoru k <body>: na každé úrovni se 591 // zneaktivnà vÅ¡ichni sourozenci vÄtve, která navigaci obsahuje. 592 // Nezávisà to na konkrétnà struktuÅe stránky (na produkci
592je 593 // vÅ¡e zabalené v jediném <main>, jehož pÅÃmé zneaktivnÄnà by 594 // vypnulo i samotné menu). Původnà hodnoty inert se ukládajÃ, 595 // aby se nezruÅ¡il stav nastavený pÅÃpadným jiným skriptem. 596 inertElements = []; 597 savedInertStates.clear(); 598 let branch = navbar; 599 while (branch && branch !== document.body && branch.parentElement) { 600 const parent = branch.parentElement; 601 for (const el of parent.children) { 602 if (el === branch) continue; 603 if (['SCRIPT', 'STYLE', 'LINK', 'TEMPLATE'].includes(el.tagName)) continue; 604 savedInertStates.set(el, el.inert); 605 el.inert = true; 606 inertElements.push(el); 607 } 608 branch = parent; 609 } 610 } else { 611 inertElements.forEach(el => { el.inert = savedInertStates.get(el) || false; }); 612 inertElements = []; 613 savedInertStates.clear(); 614 } 615 } 616 617 function syncHamburger(open) { 618 if (!hamburger) return; 619 hamburger.setAttribute('aria-expanded', String(open)); 620 hamburger.setAttribute('aria-label', open ? 'ZavÅÃt menu' : 'OtevÅÃt menu'); 621 } 622 623 function openMobileMenuSideEffects() { 624 savedBodyOverflow = document.body.style.overflow; 625 document.body.style.overflow = 'hidden'; 626 setPageInert(true); 627 syncHamburger(true); 628 } 629 630 function closeMobileMenuSideEffects() { 631 document.body.style.overflow = savedBodyOverflow; 632 savedBodyOverflow = ''; 633 setPageInert(false); 634 syncHamburger(false); 635 } 636 637 // Jediné mÃsto, kudy se mobilnà menu zavÃrá programovÄ. 638 function closeMobileMenu({ returnFocus = true } = {}) { 639 if (!mobileCb || !mobileCb.checked) return; 640 mobileCb.checked = false; 641 closeMobileMenuSideEffects(); 642 if (returnFocus) hamburger?.focus(); 643 } 644 645 if (hamburger && mobileCb) { 646 // Hamburger je <button> â Enter i mezernÃk aktivujà click nativnÄ. 647 hamburger.addEventListener('click', function () { 648 const open = !mobileCb.checked; 649 mobileCb.checked = open; 650 if (open) openMobileMenuSideEffects(); 651 else closeMobileMenuSideEffects(); 652 }); 653 } 654 655 if (mobileCb) { 656 // Klik na odkaz v menu = navigace; menu se zavÃrá bez vracenà fokusu. 657 menu.addEventListener('click', function (event) { 658 if (event.target.closest('a[href]') && mobileCb.checked) { 659 closeMobileMenu({ returnFocus: false }); 660 } 661 }); 662 } 663 664 /* ====================================================================== 665 8. GLOBÃLNà ZAVÃRÃNÃ: klik mimo a Escape 666 ====================================================================== */ 667 668 document.addEventListener('click', function (event) { 669 if (!event.target.closest('.reusable-dropdown')) closeAllDropdowns(); 670 if (!event.target.closest('.site-search-component')) closeSearch(false); 671 }); 672 673 document.addEventListener('keydown', function (event) { 674 if (event.key !== 'Escape') return; 675 closeAllDropdowns(); 676 closeSearch(true); // fokus zpÄt na lupu 677 closeMobileMenu(); // fokus zpÄt na hamburger 678 }); 679 680 /* ====================================================================== 681 9. LOGO V MOBILNÃM MENU 682 Vkládá se skriptem, aby v desktopovém DOM nebylo duplicitnà logo. 683 ====================================================================== */ 684 685 (function setupMobileMenuLogo() { 686 if (menu.querySelector('.mobile-menu-logo')) return; 687 const box = document.createElement('div'); 688 box.className = 'mobile-menu-logo'; 689 const link = document.createElement('a'); 690 link.href = '/'; 691 const img = document.createElement('img'); 692 img.src = 'images/logo_bile.svg'; 693 img.alt = 'Olomouc.cz logo'; 694 link.appendChild(img); 695 box.appendChild(link); 696 menu.prepend(box); 697 })(); 698 699 /* ====================================================================== 700 INICIALIZACE 701 ResizeObserver dobÄhne asynchronnÄ; pÅÃmé volánà kryje prvnà 702 vykreslenÃ, aby menu nebylo ani okamžik v nespoÄÃtaném stavu. 703 ====================================================================== */ 704 705 update(); 706 handleStickyNav(); 707 syncSearchState(); 708}); 709</script>
709<div class="container pos-rel"> 710<div class="container-middle cart-wrap-middle" id="container-height"> 711<h2 class="nadpis-cerveny">Zprávy: Kultura</h2> 712<div class="center"><button type="button" class="button zobraz">Zobrazit filtrovánÃ</button><ul class="filtr"><li><a href="https://www.olomouc.cz/zpravy/">VÅ¡e</a></li><li><a href="https://www.olomouc.cz/zpravy/zpravy-z-regionu">Z regionu</a></li><li class="active"><a href="https://www.olomouc.cz/zpravy/kultura">Kultura</a></li><li><a href="https://www.olomouc.cz/zpravy/sport">Sport</a></li><li><a href="https://www.olomouc.cz/zpravy/krimi">Krimi</a></li><li><a href="https://www.olomouc.cz/zpravy/tipy-a-nazory">Tipy a názory</a></li><li><a href="https://www.olomouc.cz/video">Video</a></li></ul></div> 713<section class="articles"> 714<div class="sedy-nadpis"><h2>AktuálnÄ: Kultura</h2></div> 715<div class="row"> 716<a href="https://www.olomouc.cz/zpravy/clanek/Divadlo-Tramtarie-uvede-Carodejky-z-Lipniku-Nekorektni-komedii-o-muzich-zenach-a-nasich-nejtajnejsich-pranich-39444" class="middle"><span class="oblast">Kultura</span><img src="https://www.olomouc.cz/images/zpravy/ikony/1790857104_hm8wjgrc1j.jpg" alt="" /><p>1.10.2026</p><h3>Divadlo Tramtarie uvede ÄarodÄjky z LipnÃku. Nekorektnà komedii o mužÃch, ženách a naÅ¡ich nejtajnÄjÅ¡Ãch pÅánÃch</h3></a> 717<a href="https://www.olomouc.cz/zpravy/clanek/Moravske-divadlo-uvede-Hedu-Gablerovou-Ibsenova-klasika-ukazuje-kam-az-muze-vest-neuprosny-tlak-okoli-39440" class="middle"><span class="oblast">Kultura</span><img src="https://www.olomouc.cz/images/zpravy/ikony/1790826424_fr5bo3exgk.jpg" alt="" /><p>1.10.2026</p><h3>Moravské divadlo uvede Hedu Gablerovou. Ibsenova klasika ukazuje, kam až může vést neúprosný tlak okolÃ</h3></a> 718<a href="https://www.olomouc.cz/zpravy/clanek/Jazz-Tibet-Club-ceka-nabity-podzim-Dorazi-Klara-Vytiskova-Katarzia-i-Buty-39437" class="middle"><span class="oblast">Kultura</span><img src="https://www.olomouc.cz/images/zpravy/ikony/1790764847_ct4hkuiu6b.jpg" alt="" /><p>30.9.2026</p><h3>Jazz Tibet Club Äeká nabitý podzim. Dorazà Klára Vytisková, Katarzia i Buty</h3></a> 719<a href="https://www.olomouc.cz/zpravy/clanek/Barokni-dialog-v-Katedrale-sv-Vaclava-Ensemble-Inegal-se-s-programem-k-vyroci-A-V-Michny-vraci-do-Olomouce-39433" class="middle"><span class="oblast">Kultura</span><img src="https://www.olomouc.cz/images/zpravy/ikony/1790601990_xsx6nrtgni.jpg" alt="" /><p>28.9.2026</p><h3>Baroknà dialog v Katedrále sv. Václava: Ensemble Inégal se s programem k výroÄà A. V. Michny vracà do Olomouce</h3></a> 720</div> 721</section> 722 <section class="dalsi-clanky center mt40"> 723<div class="sedy-nadpis"><h2>Dalšà Älánky: Kultura</h2></div> 724<div class="row"> 725<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Ctyri-podoby-duchovni-hudby-od-bolesti-a-zarmutku-pres-radost-a-energii-az-k-osobni-modlitbe-39424"><img src="https://www.olomouc.cz/images/zpravy/ikony/1790325361_r4ctbgk5y1.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Ctyri-podoby-duchovni-hudby-od-bolesti-a-zarmutku-pres-radost-a-energii-az-k-osobni-modlitbe-39424">ÄtyÅi podoby duchovnà hudby: od bolesti a zármutku pÅes radost a energii až k osobnà modlitbÄ</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>25.9.2026</p></div></div> 726<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Filharmonie-v-nove-sezone-nabidne-monumentalni-dila-renomovane-interprety-i-atraktivni-programy-39415"><img src="https://www.olomouc.cz/images/zpravy/ikony/1790165992_ebvy7y8a2g.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Filharmonie-v-nove-sezone-nabidne-monumentalni-dila-renomovane-interprety-i-atraktivni-programy-39415">Filharmonie v nové sezonÄ nabÃdne monumentálnà dÃla, renomované interprety i atraktivnà programy</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>23.9.2026</p></div></div> 727<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Klara-Jelinkova-Pohyb-je-pro-me-prostrednikem-mezi-tichem-a-energ
727ii-39411"><img src="https://www.olomouc.cz/images/zpravy/ikony/1790051439_ynhyg81t4d.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Klara-Jelinkova-Pohyb-je-pro-me-prostrednikem-mezi-tichem-a-energii-39411">Klára JelÃnková: Pohyb je pro mÄ prostÅednÃkem mezi tichem a energiÃ</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>22.9.2026</p></div></div> 728<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Mezi-pameti-radosti-a-rytmem-Zahajovaci-koncert-Podzimniho-festivalu-duchovni-hudby-spojil-tri-hudebni-svety-39409"><img src="https://www.olomouc.cz/images/zpravy/ikony/1789998190_srq3bm8vf7.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Mezi-pameti-radosti-a-rytmem-Zahajovaci-koncert-Podzimniho-festivalu-duchovni-hudby-spojil-tri-hudebni-svety-39409">Mezi pamÄtÃ, radostà a rytmem. Zahajovacà koncert PodzimnÃho festivalu duchovnà hudby spojil tÅi hudebnà svÄty</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>21.9.2026</p></div></div> 729<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Vlastivedne-muzeum-ozije-hudbou-remeslnym-jarmarkem-i-ohnivou-show-39392"><img src="https://www.olomouc.cz/images/zpravy/ikony/1789619347_c6usv8notp.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Vlastivedne-muzeum-ozije-hudbou-remeslnym-jarmarkem-i-ohnivou-show-39392">VlastivÄdné muzeum ožije hudbou, Åemeslným jarmarkem i ohnivou show</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>17.9.2026</p></div></div> 730<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Divadelni-Flora-zve-na-podzimni-Epilog-29DF-39374"><img src="https://www.olomouc.cz/images/zpravy/ikony/1789134594_fcb144fi7s.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Divadelni-Flora-zve-na-podzimni-Epilog-29DF-39374">Podzimnà Epilog Divadelnà Flory pÅiveze do Olomouce Laternu magiku i Divadlo LETÃ</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>12.9.2026</p></div></div> 731<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Baletni-studio-pri-Moravskem-divadle-uvede-pohadku-Kraska-a-zvire-Premiera-pomuze-rodinam-hospitalizovanych-deti-39370"><img src="https://www.olomouc.cz/images/zpravy/ikony/1789024957_5id8ehozoo.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Baletni-studio-pri-Moravskem-divadle-uvede-pohadku-Kraska-a-zvire-Premiera-pomuze-rodinam-hospitalizovanych-deti-39370">Baletnà studio pÅi Moravském divadle uvede pohádku Kráska a zvÃÅe. Premiéra pomůže rodinám hospitalizovaných dÄtÃ</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>10.9.2026</p></div></div> 732<div class="clanek"><div class="box-image"><a href="https://www.olomouc.cz/zpravy/clanek/Tramtarie-zahaji-posledni-sezonu-ve-Slovanskem-dome-dvema-novinkami-V-lednu-se-prestehuje-do-Hanackych-kasaren-39366"><img src="https://www.olomouc.cz/images/zpravy/ikony/1788956346_pkgqcdnx2y.jpg" width="195" alt="" /></a></div><div class="bleskovka-content"><h3><a href="https://www.olomouc.cz/zpravy/clanek/Tramtarie-zahaji-posledni-sezonu-ve-Slovanskem-dome-dvema-novinkami-V-lednu-se-prestehuje-do-Hanackych-kasaren-39366">Divadlo Tramtarie zahájà poslednà sezonu ve Slovanském domÄ. V lednu se pÅestÄhuje do Hanáckých kasáren</a></h3><a href="https://www.olomouc.cz/zpravy/kultura" class="oblast-seda">Kultura</a><p>9.9.2026</p></div></div> 733</div>
734<script type="text/javascript" language="javascript"> 735var clankyPage = 1; 736var rpage = "zpravy"; 737</script>
737 738<div id="dalsiClanky"></div> 739<div id="ajaxBoxDalsi"></div> 740<a href="https://www.olomouc.cz/zpravy/2" onclick="nacistDalsiClanky('kultura'); if ($(window).width() > 1050) {incHeight()}; return false;" class="button cerne mb50">Zobrazit dalšà Älánky</a> 741</section> 742</div> 743<aside class="fixni2"> 744<div id="jsad_pozice_105" class="sideAdBox3"></div>
745<script type="text/javascript">ADSystem.load()</script>
745 746</aside> 747</div> 748</div> 749<footer> 750<hr /> 751<div class="container"> 752<div class="odkazy"> 753<p>Najdete nás také na</p> 754<a target="_blank" href="https://www.facebook.com/olomouc.cz/"><img src="https://www.olomouc.cz/images/icons/facebook.svg" alt="FACEBOOK" /></a> 755<a target="_blank" href="https://www.instagram.com/olomouc.cz/"><img src="https://www.olomouc.cz/images/icons/instagram.svg" alt="INSTAGRAM" /></a> 756</div> 757<ul> 758<li><a href="https://www.olomouc.cz/zpravy"></a></li> 759<li><a href="https://www.olomouc.cz/katalog"></a></li> 760<li><a href="https://www.olomouc.cz/denni-menu"></a></li> 761<li><a href="https://www.olomouc.cz/akce-kalendar"></a></li> 762<li><a href="https://www.olomouc.cz/rubriky"></a></li> 763<li><a href="https://www.olomouc.cz/kamera"></a></li> 764<li><a href="https://www.olomouc.cz/kontakty"></a></li> 765</ul> 766</div> 767<div class="copyright"> 768<div class="container"> 769<a class="button" href="https://login.szn.cz/?returnURL=https%3a%2f%2femail.seznam.cz%2f&serviceId=email" target="_blank">E-mail: pÅihlášenÃ</a> 770<p>© 1997-2026 NEJLEPÅ Ã ADRESA a.s. VÅ¡echna práva vyhrazena.</p> 771</div> 772</div> 773</footer>
774<script> 775function checkSize(){ 776if ($(window).width() < 1060) { 777$(".lupa-devices").prependTo("nav"); 778$(".next-menu").appendTo("nav"); 779} 780else { 781$(".next-menu").appendTo(".borderwitharrow"); 782$(".searching").animate({width:'hide'}); 783$("nav").fadeIn(200); 784if($("#spinner-form-small").is(":checked")) $("#spinner-form-small").prop("checked", false); 785} 786}; 787checkSize(); 788$(window).resize(checkSize); 789$('html').click(function() { 790$(".submenu").hide(); 791if ($(window).width() > 1060) $(".searching").animate({width:'hide'}); 792$(".overlay").hide(); 793}); 794$(document).ready(function() { 795$('#spinner-form-small').click(function() { 796$('.borderwitharrow').toggle(); 797}); 798}); 799$(document).ready( 800function(event) { 801$(".search").click(function(event){ 802$(this).toggleClass("open"); 803event.stopPropagation(); 804$(".searching input").click(function(event){ 805event.stopPropagation(); 806}); 807$(".searching").animate({width:'toggle'}); 808}); 809}); 810$(".search-empty").submit(function() { 811var requiredFailed = true; 812$(".search-empty input:text").each(function() { 813if ($.trim($(this).val()).length == 0) { 814requiredFailed = false; 815return false; 816} 817}); 818return requiredFailed; 819}); 820$(window).scroll(function(){ 821var scroll = $(window).scrollTop(); 822if ($(window).width() > 1060) { 823var sticky = $('.sticky'); 824if (scroll >= 440) sticky.addClass('fixed'); 825else sticky.removeClass('fixed'); 826}; 827if($('.pageAlert').length) { 828if (scroll >= 440) $('.pageAlert').addClass('fixedAlert'); 829else $('.pageAlert').removeClass('fixedAlert'); 830} 831}); 832$(window).scroll(function(){ 833if ($(window).width() > 1060) { 834var sticky = $('body'), 835scroll = $(window).scrollTop(); 836if (scroll >= 440) sticky.addClass('trick'); 837else sticky.removeClass('trick'); 838}; 839}); 840var bottom = $(".header-content").offset().top; 841$(window).scroll(function(){ 842if ($(this).scrollTop() > bottom){ 843$(".spinner-master").addClass("fixed-button"); 844} 845else{ 846$(".spinner-master").removeClass("fixed-button"); 847} 848}); 849$(document).ready(function() { 850$(".spinner-master input").change(function(){ 851$("html, body").removeClass("overflowYhidden"); 852if($(this).is(":checked")) { 853$("html, body").addClass("overflowYhidden"); 854} else { 855$("html, body").removeClass("overflowYhidden"); 856}; 857}); 858}); 859$(document).ready(function(event) { 860$("#spinner-form").click(function(event) { 861$(this).parent().addClass("hidden"); 862$("nav").fadeToggle(); 863$(".searching").animate({width:'toggle'}); 864event.stopPropagation(); 865$(".search").toggleClass("open"); 866}); 867}); 868$(document).ready(function() { 869$(".zavrit-menu").on("click", function () { 870$("html, body").removeClass("overflowYhidden"); 871$(".spinner-master").removeClass("hidden"); 872$("nav").fadeOut(10); 873$(".searching").animate({width:'hide'}); 874$(".search").toggleClass("hide"); 875}); 876}); 877</script>
vendor: 1 bytes, line 877
877
878<script> 879$(document).ready(function() { 880$('.zobraz').click(function() { 881$('.filtr').slideToggle("fast"); 882}); 883}); 884$(function(){ 885$(".zobraz").click(function () { 886$(this).text(function(i, text){ 887return text === "Zobrazit filtrovánÃ" ? "Skrýt filtrovánÃ" : "Zobrazit filtrovánÃ"; 888}) 889}); 890}) 891</script>
vendor: 1 bytes, line 891
891
892<script> 893 if ($(window).width() > 1050) { 894 // calculate main content area width on page load and resize 895 var mainEl = ".cart", 896 mainElWi = $(mainEl).outerWidth(); 897 898 $(window).resize(function() { 899 mainElWi = $(mainEl).outerWidth(); 900 }); 901 902 //// jtaFixedSidebarEl 903 var fxdEl = ".fixni2", 904 sbContElCl = ".cart-wrap-middle", 905 posRelCl = "pos-rel", 906 posAbsCl = "pos-abs", 907 posFixCl = "pos-fix2", 908 responsive = false; 909 910 function jtaFixedSidebarEl() { 911 var sbContEl = sbContElCl; 912 913 var obj = { 914 sbContElHe: $(sbContEl).outerHeight() 915 } 916 917 $(sbContEl).css({ 918 "height": obj.sbContElHe 919 }); 920 921 if (responsive) { 922 $(window).resize(function() { 923 if (mainElWi == 960) { 924 $(sbContEl).css({ 925 "height": "auto" 926 }); 927 obj.sbContElHe = $(sbContEl).outerHeight(); 928 $(sbContEl).css({ 929 "height": obj.sbContElHe 930 }); 931 } 932 if (mainElWi == 1280) { 933 $(sbContEl).css({ 934 "height": "auto" 935 }); 936 obj.sbContElHe = $(sbContEl).outerHeight(); 937 $(sbContEl).css({ 938 "height": obj.sbContElHe 939 }); 940 } 941 }); 942 } 943 944 var pgeLay = sbContEl, 945 posRel = posRelCl, 946 posAbs = posAbsCl, 947 posFix = posFixCl, 948 top = "top", 949 winHe = $(window).outerHeight(), 950 fxdElHe = $(fxdEl).outerHeight(), 951 fxdElWi = $(fxdEl).outerWidth(), 952 pgeLayTopPos = $(pgeLay).offset().top, 953 pgeLayBotPos = $(pgeLay).offset().top + obj.sbContElHe, 954 pgeLayBotPosMinusFixedElHe = pgeLayBotPos - fxdElHe, 955 topOfSidebar = $(fxdEl).offset().top; 956 957 if (responsive) { 958 $(window).resize(function() { 959 if (mainElWi == 960) { 960 pgeLayBotPos = $(pgeLay).offset().top + obj.sbContElHe; 961 } 962 if (mainElWi == 1280) { 963 pgeLayBotPos = $(pgeLay).offset().top + obj.sbContElHe; 964 } 965 }); 966 } 967 968 $(fxdEl).parent().addClass(posRel); 969 $(fxdEl).children().css({ 970 "width": fxdElWi 971 }); 972 973 function fixEl() { 974 var topOfWin = $(window).scrollTop(), 975 botOfWin = $(window).scrollTop() + winHe, 976 fxdElTopPos = $(fxdEl).offset().top, 977 fxdElBotPos = $(fxdEl).offset().top + 978 fxdElHe; 979 980 if (topOfWin < pgeLayTopPos) { 981 $(fxdEl).removeClass(posFix).removeClass(posAbs); 982 } else { 983 if (topOfWin >= pgeLayTopPos && topOfWin <= pgeLayBotPosMinusFixedElHe) { 984 $(fxdEl).removeClass(posAbs).addClass(posFix); 985 } else { 986 $(fxdEl).removeClass(posFix).addClass(posAbs); 987 } 988 } 989 } 990 991 fixEl(); 992 $(window).scroll(function() { 993 fixEl(); 994 }); 995 } 996 997 998 function incHeight() { 999 jtaFixedSidebarEl(); 1000 var el = document.getElementById("container-height"); 1001 var height = el.offsetHeight; 1002 var newHeight = height + 1360; 1003 el.style.height = newHeight + 'px'; 1004 } 1005 1006 $(window).load(function() { 1007 if ($(fxdEl).length) { 1008 jtaFixedSidebarEl(); 1009 } 1010 }); 1011 }; 1012</script>
1012<div class="overlay"></div> 1013</main> 1014</body> 1015</html>
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.