Wikibooks plwikibooks https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna MediaWiki 1.39.0-wmf.22 first-letter Media Specjalna Dyskusja Wikipedysta Dyskusja wikipedysty Wikibooks Dyskusja Wikibooks Plik Dyskusja pliku MediaWiki Dyskusja MediaWiki Szablon Dyskusja szablonu Pomoc Dyskusja pomocy Kategoria Dyskusja kategorii Wikijunior Dyskusja Wikijuniora TimedText TimedText talk Moduł Dyskusja modułu Gadżet Dyskusja gadżetu Definicja gadżetu Dyskusja definicji gadżetu GTK+/Linki zewnętrzne 0 14476 435972 111795 2022-07-30T08:35:13Z Adam majewski 1978 /* Linki zewnętrzne */ Programowanie w systemie UNIX/c grafika/gtk wikitext text/x-wiki == Linki zewnętrzne == *[http://www.gtk.org Oficjalna strona projektu GTK+] *[http://library.gnome.org/devel/gtk-tutorial/stable/ GTK+ 2.0 Tutorial] *[http://mail.gnome.org/archives/gtk-app-devel-list/ Archiwum listy gtk-app-devel-list] *[http://zetcode.com/tutorials/gtktutorial/ The GTK+ tutorial] *[http://www.gtkforums.com/ GTK+ Forums] *[http://www.programuj.com/artykuly/linux/gtk.php Programowanie GTK] ([http://www.linuxfocus.org/English/May2003/article295.shtml tłumaczenie "GUI Programming with GTK"]) *[http://www.linuxheadquarters.com/howto/programming/gtk_examples/index.shtml Introduction To GTK+ Programming] *[http://www.yolinux.com/TUTORIALS/GTK+ProgrammingTips.html GTK+: Gnome cross platform GUI API programming Tips and Tricks] * [[Programowanie w systemie UNIX/c grafika/gtk|Programowanie w systemie UNIX gtk i c]] <noinclude> {{Nawigacja|GTK+| [[../Glade - budowniczy interfejsu/]]| | }}</noinclude> m54g4qb6o4ukcnwfc8id2p7bmmolk3f Szablon:StronaStart 10 19820 435859 435854 2022-07-29T12:39:11Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;padding-right:1px" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;padding-left:1px" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0}}}|margin:{{{margines zewnętrzny poboczny|0}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div style="overflow-x:auto;overflow-y:hidden;"{{Większy}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> rbw52mv9r2x6tlttmkx3m708gt3o33n 435861 435859 2022-07-29T12:42:51Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;padding-right:1px" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;padding-left:1px" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0}}}|margin:{{{margines zewnętrzny poboczny|0}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div style="overflow-x:auto;overflow-y:hidden;"{{Większy}}{{Mniejszy}}div style="display:table;"{{Większy}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> fcetwljb69u1yqtyig0b92qdx9yxwfe 435863 435861 2022-07-29T12:44:58Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;padding-right:1px" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;padding-left:1px" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0}}}|margin:{{{margines zewnętrzny poboczny|0}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> 6em52s3h9b3bro1pzcszt15dmkz23hq 435865 435863 2022-07-29T13:19:16Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="overflow-x:auto;overflow-y:hidden;"{{Większy}}{{Mniejszy}}div style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;padding-right:1px" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;padding-left:1px" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0}}}|margin:{{{margines zewnętrzny poboczny|0}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> o2o4fcjeae02lfcpnouoj9lcghi3apz 435867 435865 2022-07-29T13:21:37Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;padding-right:1px" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;padding-left:1px" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0}}}|margin:{{{margines zewnętrzny poboczny|0}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> 6em52s3h9b3bro1pzcszt15dmkz23hq 435868 435867 2022-07-29T14:05:02Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0 0 0 1px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 1px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> 4q8f22lxkfoacn37izpk9bs74cpd3en 435869 435868 2022-07-29T14:38:12Z Persino 2851 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}} {{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}} {{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}| <div style="order:1;width:{{{lewa strona|auto}}};overflow:hidden;" class="strona_lewa mw-parent-node"><!-- --><div class="nawigacja_boksy" style="position:absolute;height:100%;width:auto;display:none;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!-- -->{{#if:{{{nagłówek lewy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:1px|{{{nagłówek lewy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:1px|{{{stopka lewa}}}}}<!-- -->}}<!-- --> </div><!-- --></div><!-- --><div style="width:100%;order:3;overflow:hidden;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="margin-left:1px;display:flex;flex-direction:column;;z-index:2;position:absolute;right:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;height:auto;{{#if:{{{margines zewnętrzny poboczny|0 0 0 1px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 1px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!-- -->{{#if:{{{boczne menu|}}}<!-- -->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!-- -->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!-- -->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!-- -->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!-- -->}}<!-- -->}}<!-- --></div> <!-- --><div class="nawigacja_boksy" style="position:absolute;width:auto;height:100%;display:none;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!-- -->{{#if:{{{nagłówek prawy|}}}|<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:1px|{{{nagłówek prawy}}}}}<!-- -->{{DivClear}}<!-- -->}}<!-- -->{{Div|styl=height:100%;box-sizing:border-box;}}<!-- -->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!-- -->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:1px;|{{{stopka prawa}}}}}<!-- -->}}<!-- --> </div><!-- --></div>}}<!-- -->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!-- --><div style="order:1">{{{wstęp|}}}</div><!-- --><div style="order:3">{{{zakończenie|}}}</div><!-- -->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!-- -->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!-- -->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!-- -->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!-- --><div class="menu" style="display:none;"><!-- --><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span style="display:inline">Boksy</span><span style="display:none;">Spis treści</span></div> [[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!-- -->{{DivClear}}<!-- -->{{Hr|styl=margin-bottom:8px;}}<!-- --></div><!-- -->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> 6a1j72b51gorjgichtkw97gx9mk8tj6 Szablon:StronaKoniec 10 19821 435858 435735 2022-07-29T12:39:09Z Persino 2851 wikitext text/x-wiki <includeonly>{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{#ifeq:{{{1|}}}|Niekolumnowy||{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}}}</includeonly><noinclude>{{Dokumentacja|Szablon:StronaStart/opis}}</noinclude> bwhaonu9tzo9xi6oaxjtddyxrm5hyg7 435860 435858 2022-07-29T12:42:48Z Persino 2851 wikitext text/x-wiki <includeonly>{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{#ifeq:{{{1|}}}|Niekolumnowy||{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}}}</includeonly><noinclude>{{Dokumentacja|Szablon:StronaStart/opis}}</noinclude> fbh8dil3nd1z7p3k05bxp6c7erw06e0 435862 435860 2022-07-29T12:44:55Z Persino 2851 wikitext text/x-wiki <includeonly>{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{#ifeq:{{{1|}}}|Niekolumnowy||{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}}}</includeonly><noinclude>{{Dokumentacja|Szablon:StronaStart/opis}}</noinclude> 9kcspncarhp1wavp6tcg21zl2cva25m 435864 435862 2022-07-29T13:19:12Z Persino 2851 wikitext text/x-wiki <includeonly>{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{#ifeq:{{{1|}}}|Niekolumnowy||{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}}}</includeonly><noinclude>{{Dokumentacja|Szablon:StronaStart/opis}}</noinclude> nwb7zyk0yku7780w42z1pji1evjmhw9 435866 435864 2022-07-29T13:21:25Z Persino 2851 wikitext text/x-wiki <includeonly>{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{#ifeq:{{{1|}}}|Niekolumnowy||{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}}}</includeonly><noinclude>{{Dokumentacja|Szablon:StronaStart/opis}}</noinclude> 9kcspncarhp1wavp6tcg21zl2cva25m Programowanie w systemie UNIX/c grafika/gtk 0 28447 435969 428654 2022-07-30T08:30:22Z Adam majewski 1978 /* Instalacja */ wikitext text/x-wiki =Instalacja= sudo apt install libgtk-4-dev build-essential Z użyciem apt<ref>[http://askubuntu.com/questions/101306/how-do-i-install-gtk-3-0 askubuntu question how-do-i-install-gtk-3-0]</ref> sudo apt-get install libgtk-3-dev gtk-3-examples w katalogu: /usr/share/doc/gtk-3-examples/examples/ ==wersja== * Latest stable 4.6.6 * Latest old stable 3.24.34 ===apt=== Za pomocą apt-cache<ref>[https://askubuntu.com/questions/78377/how-to-know-my-gtk-version?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa askubuntu question: how-to-know-my-gtk-version]</ref> apt-cache policy libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> libgtk2.0-0: Zainstalowana: 2.24.32-1ubuntu1 Kandydująca: 2.24.32-1ubuntu1 Tabela wersji: *** 2.24.32-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status libgtk-3-0: Zainstalowana: 3.22.30-1ubuntu1 Kandydująca: 3.22.30-1ubuntu1 Tabela wersji: *** 3.22.30-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status </pre> === dpkg === dpkg -l libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> Wybór:U=nieznany/I=instalacja/R=usunięcie/P=wyczyszczenie/H=zatrzymanie | Stan:N=brak/I=zainstalowany/C=skonfigurowany/U=rozpakowany/ |/ F=częśc. skonfigurowany/H=częśc. zainstalowany/W=wyzw. czek./T=wyzw. zapl. || Błędy?=(brak)/R-do pon. inst. (duże litery w "Stan" i "Błędy"=problemy) ||/ Nazwa Wersja Architektura Opis +++-================================================================-=====================================-=====================================-====================================================================================================================================== ii libgtk-3-0:amd64 3.22.30-1ubuntu1 amd64 GTK+ graphical user interface library ii libgtk2.0-0:amd64 </pre> === gtk-launch=== gtk-launch --version === pkg-config === pkg-config --modversion gtk+-3.0 wynik : 3.22.30 położenie plików pc locate gtk | grep '\.pc' =Przykłady= Po zainstalowaniu przykładów: gtk3-demo ==Pierwszy program== <syntaxhighlight lang=c> /* https://developer.gnome.org/gtk-tutorial/2.90/c39.html gcc g.c `pkg-config --cflags --libs gtk+-2.0` ./a.out */ #include<gtk/gtk.h> int main(int argc,char *argv[]) { GtkWidget *window; gtk_init(&argc,&argv); window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_show(window); gtk_main(); return 0; } </syntaxhighlight> =Poradniki= * [[GTK+]] - podręcznik wikibooks * [https://developer.gnome.org/guides developer gnome guides] =Źródła= <references/> cc7wvq8hsppx2thxo98oa6m7lmr84qk 435970 435969 2022-07-30T08:32:59Z Adam majewski 1978 /* wersja */ opis wikitext text/x-wiki =Instalacja= sudo apt install libgtk-4-dev build-essential Z użyciem apt<ref>[http://askubuntu.com/questions/101306/how-do-i-install-gtk-3-0 askubuntu question how-do-i-install-gtk-3-0]</ref> sudo apt-get install libgtk-3-dev gtk-3-examples w katalogu: /usr/share/doc/gtk-3-examples/examples/ ==pakiety== * [https://packages.ubuntu.com/search?keywords=gtk packages ubuntu search: keywords=gtk] ==wersja== * Latest stable 4.6.6 * Latest old stable 3.24.34 ===apt=== Za pomocą apt-cache<ref>[https://askubuntu.com/questions/78377/how-to-know-my-gtk-version?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa askubuntu question: how-to-know-my-gtk-version]</ref> apt-cache policy libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> libgtk2.0-0: Zainstalowana: 2.24.32-1ubuntu1 Kandydująca: 2.24.32-1ubuntu1 Tabela wersji: *** 2.24.32-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status libgtk-3-0: Zainstalowana: 3.22.30-1ubuntu1 Kandydująca: 3.22.30-1ubuntu1 Tabela wersji: *** 3.22.30-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status </pre> === dpkg === dpkg -l libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> Wybór:U=nieznany/I=instalacja/R=usunięcie/P=wyczyszczenie/H=zatrzymanie | Stan:N=brak/I=zainstalowany/C=skonfigurowany/U=rozpakowany/ |/ F=częśc. skonfigurowany/H=częśc. zainstalowany/W=wyzw. czek./T=wyzw. zapl. || Błędy?=(brak)/R-do pon. inst. (duże litery w "Stan" i "Błędy"=problemy) ||/ Nazwa Wersja Architektura Opis +++-================================================================-=====================================-=====================================-====================================================================================================================================== ii libgtk-3-0:amd64 3.22.30-1ubuntu1 amd64 GTK+ graphical user interface library ii libgtk2.0-0:amd64 </pre> === gtk-launch=== gtk-launch --version === pkg-config === pkg-config --modversion gtk+-3.0 wynik : 3.22.30 położenie plików pc locate gtk | grep '\.pc' =Przykłady= Po zainstalowaniu przykładów: gtk3-demo ==Pierwszy program== <syntaxhighlight lang=c> /* https://developer.gnome.org/gtk-tutorial/2.90/c39.html gcc g.c `pkg-config --cflags --libs gtk+-2.0` ./a.out */ #include<gtk/gtk.h> int main(int argc,char *argv[]) { GtkWidget *window; gtk_init(&argc,&argv); window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_show(window); gtk_main(); return 0; } </syntaxhighlight> =Poradniki= * [[GTK+]] - podręcznik wikibooks * [https://developer.gnome.org/guides developer gnome guides] =Źródła= <references/> cu0fg3zjx1nmnzjr8itbcrd8dy6a8v7 435971 435970 2022-07-30T08:34:32Z Adam majewski 1978 /* pakiety */ lista wikitext text/x-wiki =Instalacja= sudo apt install libgtk-4-dev build-essential Z użyciem apt<ref>[http://askubuntu.com/questions/101306/how-do-i-install-gtk-3-0 askubuntu question how-do-i-install-gtk-3-0]</ref> sudo apt-get install libgtk-3-dev gtk-3-examples w katalogu: /usr/share/doc/gtk-3-examples/examples/ ==pakiety== * [https://packages.ubuntu.com/search?keywords=gtk packages ubuntu search: keywords=gtk] Lista * libgtk-4-dev * gtk-4-examples * gtk-4-tests * ==wersja== * Latest stable 4.6.6 * Latest old stable 3.24.34 ===apt=== Za pomocą apt-cache<ref>[https://askubuntu.com/questions/78377/how-to-know-my-gtk-version?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa askubuntu question: how-to-know-my-gtk-version]</ref> apt-cache policy libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> libgtk2.0-0: Zainstalowana: 2.24.32-1ubuntu1 Kandydująca: 2.24.32-1ubuntu1 Tabela wersji: *** 2.24.32-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status libgtk-3-0: Zainstalowana: 3.22.30-1ubuntu1 Kandydująca: 3.22.30-1ubuntu1 Tabela wersji: *** 3.22.30-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status </pre> === dpkg === dpkg -l libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> Wybór:U=nieznany/I=instalacja/R=usunięcie/P=wyczyszczenie/H=zatrzymanie | Stan:N=brak/I=zainstalowany/C=skonfigurowany/U=rozpakowany/ |/ F=częśc. skonfigurowany/H=częśc. zainstalowany/W=wyzw. czek./T=wyzw. zapl. || Błędy?=(brak)/R-do pon. inst. (duże litery w "Stan" i "Błędy"=problemy) ||/ Nazwa Wersja Architektura Opis +++-================================================================-=====================================-=====================================-====================================================================================================================================== ii libgtk-3-0:amd64 3.22.30-1ubuntu1 amd64 GTK+ graphical user interface library ii libgtk2.0-0:amd64 </pre> === gtk-launch=== gtk-launch --version === pkg-config === pkg-config --modversion gtk+-3.0 wynik : 3.22.30 położenie plików pc locate gtk | grep '\.pc' =Przykłady= Po zainstalowaniu przykładów: gtk3-demo ==Pierwszy program== <syntaxhighlight lang=c> /* https://developer.gnome.org/gtk-tutorial/2.90/c39.html gcc g.c `pkg-config --cflags --libs gtk+-2.0` ./a.out */ #include<gtk/gtk.h> int main(int argc,char *argv[]) { GtkWidget *window; gtk_init(&argc,&argv); window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_show(window); gtk_main(); return 0; } </syntaxhighlight> =Poradniki= * [[GTK+]] - podręcznik wikibooks * [https://developer.gnome.org/guides developer gnome guides] =Źródła= <references/> g7f26ayo5i8zb6k40wqcwvcbah6q313 435974 435971 2022-07-30T08:38:13Z Adam majewski 1978 /* pakiety */ wikitext text/x-wiki =Instalacja= sudo apt install libgtk-4-dev build-essential Z użyciem apt<ref>[http://askubuntu.com/questions/101306/how-do-i-install-gtk-3-0 askubuntu question how-do-i-install-gtk-3-0]</ref> sudo apt-get install libgtk-3-dev gtk-3-examples w katalogu: /usr/share/doc/gtk-3-examples/examples/ ==pakiety== * [https://packages.ubuntu.com/search?keywords=gtk packages ubuntu search: keywords=gtk] Lista * libgtk-4-dev * gtk-4-examples * gtk-4-tests * gtk-doc-tools ==wersja== * Latest stable 4.6.6 * Latest old stable 3.24.34 ===apt=== Za pomocą apt-cache<ref>[https://askubuntu.com/questions/78377/how-to-know-my-gtk-version?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa askubuntu question: how-to-know-my-gtk-version]</ref> apt-cache policy libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> libgtk2.0-0: Zainstalowana: 2.24.32-1ubuntu1 Kandydująca: 2.24.32-1ubuntu1 Tabela wersji: *** 2.24.32-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status libgtk-3-0: Zainstalowana: 3.22.30-1ubuntu1 Kandydująca: 3.22.30-1ubuntu1 Tabela wersji: *** 3.22.30-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status </pre> === dpkg === dpkg -l libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> Wybór:U=nieznany/I=instalacja/R=usunięcie/P=wyczyszczenie/H=zatrzymanie | Stan:N=brak/I=zainstalowany/C=skonfigurowany/U=rozpakowany/ |/ F=częśc. skonfigurowany/H=częśc. zainstalowany/W=wyzw. czek./T=wyzw. zapl. || Błędy?=(brak)/R-do pon. inst. (duże litery w "Stan" i "Błędy"=problemy) ||/ Nazwa Wersja Architektura Opis +++-================================================================-=====================================-=====================================-====================================================================================================================================== ii libgtk-3-0:amd64 3.22.30-1ubuntu1 amd64 GTK+ graphical user interface library ii libgtk2.0-0:amd64 </pre> === gtk-launch=== gtk-launch --version === pkg-config === pkg-config --modversion gtk+-3.0 wynik : 3.22.30 położenie plików pc locate gtk | grep '\.pc' =Przykłady= Po zainstalowaniu przykładów: gtk3-demo ==Pierwszy program== <syntaxhighlight lang=c> /* https://developer.gnome.org/gtk-tutorial/2.90/c39.html gcc g.c `pkg-config --cflags --libs gtk+-2.0` ./a.out */ #include<gtk/gtk.h> int main(int argc,char *argv[]) { GtkWidget *window; gtk_init(&argc,&argv); window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_show(window); gtk_main(); return 0; } </syntaxhighlight> =Poradniki= * [[GTK+]] - podręcznik wikibooks * [https://developer.gnome.org/guides developer gnome guides] =Źródła= <references/> sr0z6u9s3qiy9u79v16ptteg1pscn0c 435990 435974 2022-07-30T09:37:52Z Adam majewski 1978 /* Instalacja */ sudo apt install libgtk-4-dev gtk-4-examples wikitext text/x-wiki =Instalacja= sudo apt install libgtk-4-dev gtk-4-examples build-essential Z użyciem apt<ref>[http://askubuntu.com/questions/101306/how-do-i-install-gtk-3-0 askubuntu question how-do-i-install-gtk-3-0]</ref> sudo apt-get install libgtk-3-dev gtk-3-examples w katalogu: /usr/share/doc/gtk-3-examples/examples/ ==pakiety== * [https://packages.ubuntu.com/search?keywords=gtk packages ubuntu search: keywords=gtk] Lista * libgtk-4-dev * gtk-4-examples * gtk-4-tests * gtk-doc-tools ==wersja== * Latest stable 4.6.6 * Latest old stable 3.24.34 ===apt=== Za pomocą apt-cache<ref>[https://askubuntu.com/questions/78377/how-to-know-my-gtk-version?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa askubuntu question: how-to-know-my-gtk-version]</ref> apt-cache policy libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> libgtk2.0-0: Zainstalowana: 2.24.32-1ubuntu1 Kandydująca: 2.24.32-1ubuntu1 Tabela wersji: *** 2.24.32-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status libgtk-3-0: Zainstalowana: 3.22.30-1ubuntu1 Kandydująca: 3.22.30-1ubuntu1 Tabela wersji: *** 3.22.30-1ubuntu1 500 500 http://pl.archive.ubuntu.com/ubuntu bionic/main amd64 Packages 100 /var/lib/dpkg/status </pre> === dpkg === dpkg -l libgtk2.0-0 libgtk-3-0 przykładowy wynik: <pre> Wybór:U=nieznany/I=instalacja/R=usunięcie/P=wyczyszczenie/H=zatrzymanie | Stan:N=brak/I=zainstalowany/C=skonfigurowany/U=rozpakowany/ |/ F=częśc. skonfigurowany/H=częśc. zainstalowany/W=wyzw. czek./T=wyzw. zapl. || Błędy?=(brak)/R-do pon. inst. (duże litery w "Stan" i "Błędy"=problemy) ||/ Nazwa Wersja Architektura Opis +++-================================================================-=====================================-=====================================-====================================================================================================================================== ii libgtk-3-0:amd64 3.22.30-1ubuntu1 amd64 GTK+ graphical user interface library ii libgtk2.0-0:amd64 </pre> === gtk-launch=== gtk-launch --version === pkg-config === pkg-config --modversion gtk+-3.0 wynik : 3.22.30 położenie plików pc locate gtk | grep '\.pc' =Przykłady= Po zainstalowaniu przykładów: gtk3-demo ==Pierwszy program== <syntaxhighlight lang=c> /* https://developer.gnome.org/gtk-tutorial/2.90/c39.html gcc g.c `pkg-config --cflags --libs gtk+-2.0` ./a.out */ #include<gtk/gtk.h> int main(int argc,char *argv[]) { GtkWidget *window; gtk_init(&argc,&argv); window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_show(window); gtk_main(); return 0; } </syntaxhighlight> =Poradniki= * [[GTK+]] - podręcznik wikibooks * [https://developer.gnome.org/guides developer gnome guides] =Źródła= <references/> fg6c59e3iv8kmzzi9h3c4j4hvf0l5zj Atlas flory Polski/Storczykowate 0 34336 435857 402241 2022-07-29T12:34:49Z CommonsDelinker 1569 Replacing Orchis_de_Traunsteiner_(Vosges).JPG with [[File:Petit_orchis_de_mai_(Vosges).jpg]] (by [[:c:User:CommonsDelinker|CommonsDelinker]] because: [[:c:COM:FR|File renamed]]: [[:c:COM:FR#FR3|Criterion 3]] (obvious error) · Correction d'une mauvaise ide wikitext text/x-wiki {{NawigacjaG|Atlas flory Polski|[[Atlas flory Polski/Liliowate|Liliowate]]|[[Atlas flory Polski/Kosaćcowate|Kosaćcowate]]}} <center><big><big>Storczykowate (''Orchidaceae'')</big></big></center> {{TOC limit|2}} === Koślaczek (''Anacamptis'') === ==== [[w:Storczyk cuchnący|Storczyk cuchnący]] (''Anacamptis coriophora'' (L.) R.M.Bateman, Pridgeon & M.W.Chase, Lindleyan) ==== <gallery> File:Anacamptis coriophera Orchi 022.jpg|Storczyk cuchnący. File:Orchis coriophora1.JPG|Storczyk cuchnący. File:Anacamptis coriophora Mallorca 005.jpg|Pąki kwiatowe storczyka cuchnącego. File:Anacamptis coriophora Mallorca 01.jpg|Kwiatostan storczyka cuchnącego. File:Orchis - Pirinççiçeği 01.jpg|Kwiatostan storczyka cuchnącego. File:Mg-k ddf00086a.jpg|Kwiat storczyka cuchnącego. File:Anacamptis coriophora Mallorca 03.jpg|Kwiat storczyka cuchnącego. </gallery> {{Atlas flory Polski/Commons|Anacamptis coriophora|Storczyk cuchnący}} {{BrClear}} ==== [[w:Storczyk samczy|Storczyk samczy]] (''Anacamptis morio'' (L.) R.M.Bateman, Pridgeon & M.W.Chase) ==== <gallery> File:Anacamptis morio var alba 07.jpg|Storczyk samczy. File:Anacamptis morio 12.JPG|Storczyk samczy. File:Orchis morio PID794-4.jpg|Storczyk samczy. File:Orchis morio in natural monument Svaté Pole in spring 2012 (13).JPG|Storczyk samczy. File:Orchis morio 010303.jpg|Liście storczyka samczego. File:Anacamptis morio Chancy 24 03 2014 01.jpg|Liście storczyka samczego. File:Anacamptis morio - Knospen Orchi 6823.jpg|Pąki kwiatowe storczyka samczego. File:2009-05-13 Anacamptis morio.jpg|Kwiatostany storczyka samczego. File:Anacamptis-morio-subsp-morio-e 2016-04-20 Chancy 1~01.jpg|Kwiatostan storczyka samczego. File:Green-winged Orchid. Anacamptis morio - Flickr - gailhampshire (1).jpg|Kwiaty storczyka samczego. File:Orchis Chancy 09 05 2013 08.jpg|Kwiaty storczyka samczego. File:Orchis morio flowers1.jpg|Kwiaty storczyka samczego. File:Orchis morio SeedsCapsules 12April2009 DehesaBoyalPuertollano.jpg|Owoce storczyka samczego. </gallery> {{Atlas flory Polski/Commons|Anacamptis morio|Storczyk samczy}} {{BrClear}} ==== [[w:Storczyk błotny|Storczyk błotny]] (''Anacamptis palustris'' (Jacq.) R.M.Bateman, Pridgeon & M.W.Chase) ==== <gallery> File:Anacamptis palustris.jpg|Storczyk błotny. File:Orchis palustris 11.jpg|Storczyk błotny. File:Orchis palustris 16.jpg|Storczyk błotny. File:Orchis palustris 6.jpg|Kwiatostan storczyka błotnego. File:Orchis palustris (14213968650).jpg|Kwiaty storczyka błotnego. File:Orchis palustris 10.jpg|Kwiaty storczyka błotnego. File:Anacamptis palustris (subsp. palustris) sl3.jpg|Owoce storczyka błotnego. </gallery> {{Atlas flory Polski/Commons|Anacamptis palustris|Storczyk błotny}} {{BrClear}} ==== [[w:Koślaczek stożkowaty|Koślaczek stożkowaty]] (''Anacamptis pyramidalis'' (L.) Rich.) ==== <gallery> File:Anacamptis piramidalis distribution in Poland.svg|Występowanie koślaczka stożkowatego w Polsce. File:Anacamptis pyramidalis 42.jpg|Koślaczek stożkowaty. File:Pyramidal Orchid - Anacamptis pyramidalis (27224577544).jpg|Koślaczek stożkowaty. File:Anacamptis pyramidalis 44 (cropped).jpg|Koślaczek stożkowaty z pąkami kwiatowymi. File:Anacamptis pyramidalis tuber.jpg|Bulwa koślaczka stożkowatego. File:Orchidaceae - Anacamptis pyramidalis.JPG|Liść koślaczka stożkowatego. File:74160 Collonges-sous-Salève, France - panoramio (7).jpg|Pąki kwiatowe koślaczka stożkowatego. File:Pyramidal Orchid - Anacamptis pyramidalis (12585663533).jpg|Kwiatostan koślaczka stożkowatego. File:Pyramidal Orchid - Anacamptis pyramidalis (11729000926).jpg|Kwiaty koślaczka stożkowatego. File:20160716Anacamptis pyramidalis1.jpg|Owoce koślaczka stożkowatego. </gallery> {{Atlas flory Polski/Commons|Anacamptis pyramidalis|Koślaczek stożkowaty}} {{BrClear}} === Buławnik (''Cephalanthera'') === ==== [[w:Buławnik wielkokwiatowy|Buławnik wielkokwiatowy]] (''Cephalanthera damasonium'' (Mill.) Druce) ==== <gallery> File:Cephalanthera damasonium distribution in Poland.svg|Występowanie buławnika wielkokwiatowego w Polsce. File:Cephalanthera damasonium 280503.jpg|Buławnik wielkokwiatowy. File:Cephalanthera damasonium kz03.jpg|Buławnik wielkokwiatowy. File:Cephalanthera damasonium 2.jpg|Buławnik wielkokwiatowy. File:Cephalanthera damasonium 270408.jpg|Buławnik wielkokwiatowy. File:Cephalanthera damasonium (26792279622).jpg|Buławnik wielkokwiatowy. File:Cephalanthera damasonium 12 (cropped).jpg|Buławnik wielkokwiatowy z pąkami kwiatowymi. File:Cephalanthera damasonium (26969175324).jpg|Pąki kwiatowe buławnika wielkokwiatowego. File:Cephalanthera damasonium kz01.jpg|Kwiatostan buławnika wielkokwiatowego. File:Cephalanthera damasonium 110606.jpg|Kwiaty buławnika wielkokwiatowego. File:Cephalanthera damasonium 010905.jpg|Owoce buławnika wielkokwiatowego. </gallery> {{Atlas flory Polski/Commons|Cephalanthera damasonium|Buławnik wielkokwiatowy}} {{BrClear}} ==== [[w:Buławnik mieczolistny|Buławnik mieczolistny]] (''Cephalanthera longifolia'' (L.) Fritsch) ==== <gallery> File:Cephalanthera longifolia distribution in Poland.svg|Występowanie buławnika mieczolistnego w Polsce. File:Cephalanthera longifolia 290508a.jpg|Buławnik mieczolistny. File:Cephalanthera longifolia sl1.jpg|Buławnik mieczolistny. File:Cephalanthera longifolia - identifiée8.jpg|Buławnik mieczolistny. File:MHA2303-1632.jpg|Buławnik mieczolistny. File:Cephalanthera longifolia 13.JPG|Buławnik mieczolistny z pąkami kwiatowymi. File:Cephalanthera longifolia sl3.jpg|Liście buławnika mieczolistnego. File:Sword-leaved Helleborine - Cephalanthera longifolia (13972092180).jpg|Kwiatostan buławnika mieczolistnego. |File:Sword-leaved Helleborine - Cephalanthera longifolia (17493064703).jpg|Kwiatostan buławnika mieczolistnego widziany z góry. File:Cephalanthera longifolia (43888753311).jpg|Kwiaty buławnika mieczolistnego. File:Orchidaceae - Cephalanthera longifolia.JPG|Kwiat buławnika mieczolistnego. File:Cephalanthera longifolia - fruit.jpg|Owoc buławnika mieczolistnego. </gallery> {{Atlas flory Polski/Commons|Cephalanthera longifolia|Buławnik mieczolistny}} {{BrClear}} ==== [[w:Buławnik czerwony|Buławnik czerwony]] (''Cephalanthera rubra'' (L.) Rich.) ==== <gallery> File:Cephalanthera rubra distribution in Poland.svg|Występowanie buławnika czerwonego w Polsce. File:Cephalanthera rubra u1.JPG|Buławnik czerwony. File:Cephalanthera rubra-01-Kaernten-2008-Thomas Huntke.jpg|Buławnik czerwony. File:Cephalanthera rubra LC0350.jpg|Buławnik czerwony. File:Cephalanthera rubra 03.jpg|Liście buławnika czerwonego. File:Céphalanthère rouge Trélissac 20-06-2010 (6).JPG|Liście buławnika czerwonego. File:Red Helleborine - Cephalanthera rubra (27959258915).jpg|Pąki kwiatowe buławnika czerwonego. File:Cephalanthera rubra catena-rangeval 55 170602 10.JPG|Kwiatostan buławnika czerwonego. File:Cephalanthera rubra 08.jpg|Kwiaty buławnika czerwonego. File:Cephalanthera rubra flower 150604.jpg|Kwiat buławnika czerwonego. File:Red Helleborine - Cephalanthera rubra (14350751211).jpg|Kwiat buławnika czerwonego. File:Red Helleborine - Cephalanthera rubra (14352515072).jpg|Kwiat buławnika czerwonego. File:Céphalanthère rouge Trélissac 27 06 09 (5).JPG|Owoce buławnika czerwonego. </gallery> {{Atlas flory Polski/Commons|Cephalanthera rubra|Buławnik czerwony}} {{BrClear}} === Potrostek (''Chamorchis'') === ==== [[w:Potrostek alpejski|Potrostek alpejski]] (''Chamorchis alpina'' (L.) Rich) ==== <gallery> File:Chamorchis alpina distribution in Poland.svg|Występowanie potrostka alpejskiego w Polsce. File:Chamorchis alpina 250708c.jpg|Potrostek alpejski. File:Chamorchis alpina 230705b.jpg|Potrostek alpejski. File:Chamorchis alpina 250708g.jpg|Potrostek alpejski. File:Chamorchis alpina 250708i.jpg|Potrostek alpejski. File:Chamorchis alpina 060707a.jpg|Kwiatostan potrostka alpejskiego. File:Chamorchis alpina 250708a.jpg|Kwiatostan potrostka alpejskiego. File:Chamorchis alpina 180806.jpg|Owoce potrostka alpejskiego. </gallery> {{Atlas flory Polski/Commons|Chamorchis alpina|Potrostek alpejski}} {{BrClear}} === Żłobik (''Corallorhiza'') === ==== [[w:Żłobik koralowy|Żłobik koralowy]] (''Corallorhiza trifida'' Chatelain) ==== <gallery> File:Corallorhiza trifida distribution in Poland.svg|Występowanie żłobika koralowego w Polsce. File:Corallorrhiza trifida 05 mg-k.jpg|Żłobik koralowy. File:Corallorhiza trifida PID1630-5.jpg|Żłobik koralowy. File:Corallorrhiza trifida 03 mg-k.jpg|Żłobik koralowy. File:Corallorhiza trifida PID1721-2.jpg|Żłobik koralowy z owocami. File:Corallorrhiza trifida 08 mg-k.jpg|Pąki kwiatowe żłobika koralowego. File:Corallorhiza trifida 2016.jpg|Kwiatostany żłobika koralowego. File:Corallorhiza trifida - Flickr 003.jpg|Kwiatostan żłobika koralowego. File:Corallorhiza trifida PID1630-3.jpg|Kwiatostan żłobika koralowego. File:Corallorrhiza trifida 06 mg-k.jpg|Kwiat żłobika koralowego. File:Corallorhiza trifida - fruits.jpg|Owoce żłobika koralowego. </gallery> {{Atlas flory Polski/Commons|Corallorhiza trifida|Żłobik koralowy}} {{BrClear}} === Obuwik (''Cypripedium'') === ==== [[w:Obuwik pospolity|Obuwik pospolity]] (''Cypripedium calceolus'' L.) ==== <gallery> File:Cypripedium calceolus distribution in Poland.svg|Występowanie obuwika pospolitego w Polsce. File:Türkenfelsen-20090519-064.jpg|Obuwik pospolity. File:Wilder Frauenschuh im Naturpark Meißner - Kaufunger Wald.jpg|Obuwik pospolity. File:Cypripedium calceolus Orchi 003.jpg|Obuwik pospolity. File:Lady's-Slipper Orchid - Cypripedium calceolus - panoramio (42).jpg|Obuwik pospolity. File:Cypripedium calceolus 030208.jpg|Obuwik pospolity. File:Cypripedium calceolus sl2.jpg|Obuwik pospolity z pąkami kwiatowymi. File:NSG-00576.01 Riedholz und Grettstädter Wiese, Cypripedium calceolus 20170514 001.jpg|Pąk kwiatowy obuwika pospolitego. File:Cypripedium calceolus sl1.jpg|Kwiat obuwika pospolitego. File:Cypripedium calceolus sl11.jpg|Kwiat obuwika pospolitego. File:Cypripedium calceolus sl12.jpg|Kwiat obuwika pospolitego. File:Cypripedium calceolus - Steiermark.jpg|Kwiat obuwika pospolitego. File:Lady's-Slipper Orchid - Cypripedium calceolus - panoramio.jpg|Kwiat obuwika pospolitego. File:Cypripedium calceolus 280908.jpg|Owoc obuwika pospolitego. </gallery> {{Atlas flory Polski/Commons|Cypripedium calceolus|Obuwik pospolity}} {{BrClear}} === Kukułka (''Dactylorhiza'') === ==== [[w:Kukułka bałtycka|Kukułka bałtycka]] (''Dactylorhiza baltica'' (Klinge) N. I. Orlova) ==== <gallery> File:Dactylorhiza baltica distribution in Poland.svg|Występowanie kukułki bałtyckiej w Polsce. File:Dactylorhiza baltica 1.jpg|Kukułka bałtycka. File:Dactylorhiza baltica 060621.jpg|Kukułka bałtycka. File:Dactylorhiza baltica 060629.jpg|Kukułka bałtycka. File:Dactylorhiza baltica 2.jpg|Kwiatostan kukułki bałtyckiej. File:Dactylorhiza baltica - Pakri.jpg|Kwiatostan kukułki bałtyckiej. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza baltica|Kukułka bałtycka}} {{BrClear}} ==== [[w:Kukułka Fuchsa|Kukułka Fuchsa]] (''Dactylorhiza fuchsii'' (Druce) Soó) ==== <gallery> File:Dactylorhiza fuchsii distribution in Poland.svg|Występowanie kukułki Fuchsa w Polsce. File:Dactylorhiza fuchsii 190605.jpg|Kukułka Fuchsa. File:Common Spotted Orchid - Dactylorhiza fuchsii (14217288658).jpg|Kukułka Fuchsa. File:Common spotted orchid - Dactylorhiza fuchsii - panoramio (1).jpg|Kukułka Fuchsa. File:OrchidSaleve1.jpg|Kukułka Fuchsa. File:Dactylorhiza Fuchsii starting to bloom in the Aamsveen, The Netherlands.jpg|Kukułka Fuchsa z pąkami kwiatowymi. File:Dactylorhiza fuchsii mont-plaisir-glatigny 60 26062008 07.jpg|Liście kukułki Fuchsa. File:Dactylorhiza fuchsii CH 2.jpg|Liść kukułki Fuchsa. File:Common Spotted Orchid - Flickr - gailhampshire (2).jpg|Pąki kwiatowe kukułki Fuchsa. File:Common spotted orchid - Dactylorhiza fuchsii (11728949776).jpg|Kwiatostan kukułki Fuchsa. File:Dactylorhiza fuchsii Mariazell 01.JPG|Kwiatostan kukułki Fuchsa. File:Common Spotted Orchid - Dactylorhiza fuchsii (14662783582).jpg|Kwiatostan kukułki Fuchsa. File:Common Spotted Orchid - Dactylorhiza fuchsii (14248298559).jpg|Kwiat kukułki Fuchsa. File:Fuksova kukavica.jpg|Kwiat kukułki Fuchsa. File:Dactylorhiza fuchsii 070215.jpg|Owoce kukułki Fuchsa. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza fuchsii|Kukułka Fuchsa}} {{BrClear}} ==== [[w:Kukułka krwista|Kukułka krwista]] (''Dactylorhiza incarnata'' (L.) Soó) ==== <gallery> File:Dactylorhiza incarnata subsp. incarnata distribution in Poland.svg|Występowanie kukułki krwistej w Polsce. File:Dactylorhiza incarnata 190506.jpg|Kukułka krwista. File:Dactylorhiza incarnata 18.jpg|Kukułka krwista. File:Dactylorhiza incarnata - Kahkjaspunane sõrmkäpp Keila.jpg|Kukułka krwista. File:PNBT Dactylorhiza incarnata liście 03.07.10 pl.jpg|Liście kukułki krwistej. File:Dactylorhiza incarnata Griechenland 742 8.6.JPG|Kwiatostan kukułki krwistej. File:Early Marsh Orchid (42359359702).jpg|Kwiatostan kukułki krwistej. File:Dactylorhiza incarnata (30042048618).jpg|Kwiatostan kukułki krwistej. File:Dactylorhiza incarnata 4.jpg|Kwiaty kukułki krwistej. File:Dactylorhiza incarnata 25.jpg|Owoce kukułki krwistej. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza incarnata|Kukułka krwista}} {{BrClear}} ==== [[w:Kukułka plamista|Kukułka plamista]] (''Dactylorhiza maculata'' (L.) Soó) ==== <gallery> File:Dactylorhiza maculata distribution in Poland.svg|Występowanie kukułki plamistej w Polsce. File:Dactylorhiza maculata (14361037131).jpg|Kukułka plamista. File:Orchis tâcheté.JPG|Kukułka plamista. File:Dactylorhiza maculata Norway.jpg|Kukułka plamista. File:Dactylorhiza maculata20090914 068.jpg|Bulwa kukułki plamistej. File:Листя пальчатокорінника (Dactylorhiza maculata) в заказнику Полігон.jpg|Liście kukułki plamistej. File:Orchidaceae - Dactylorhiza maculata-4.JPG|Liść kukułki plamistej. File:Dactylorhiza maculata ENBLA02.JPG|Liście kukułki plamistej. File:Dactylorhiza maculata ENBLA04.JPG|Liście kukułki plamistej. File:Orchideen Kerstlingeröder Feld 071.jpg|Pąki kwiatowe kukułki plamistej. File:Gevlekte orchis. Orchis (Dactylorhiza maculata subsp. Maculata) 07.jpg|Kwiatostan kukułki plamistej. File:Dactylorhiza maculata - flowers.jpg|Kwiaty kukułki plamistej. File:Orchidaceae - Dactylorhiza maculata-1.JPG|Kwiaty kukułki plamistej. File:Dactylorhiza maculata20090914 053.jpg|Owoce kukułki plamistej. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza maculata|Kukułka plamista}} {{BrClear}} ==== [[w:Kukułka szerokolistna|Kukułka szerokolistna]] (''Dactylorhiza majalis'' (Rchb.) P. F. Hunt & Summerh.) ==== <gallery> File:Dactylorhiza majalis distribution in Poland.svg|Występowanie kukułki szerokolistnej w Polsce. File:Dactylorhiza majalis 39.jpg|Kukułka szerokolistna. File:Dactylorhiza majalis LC0269.jpg|Kukułka szerokolistna. File:Dactylorhiza majalis (habitus).jpg|Kukułka szerokolistna. File:Western Marsh Orchid - Dactylorhiza majalis (14217288228).jpg|Kukułka szerokolistna. File:Velká louka 6.JPG|Liście kukułki szerokolistnej. File:Orchidee im Süntel.jpg|Liście kukułki szerokolistnej. File:Dactylorhiza majalis (34764171112).jpg|Kwiatostan kukułki szerokolistnej. File:Dactylorhiza majalis 130508.jpg|Kwiatostan kukułki szerokolistnej. File:Western Marsh Orchid - Dactylorhiza majalis (14537844139).jpg|Kwiaty kukułki szerokolistnej. File:Dactylorhiza majalis PID289.jpg|Kwiaty kukułki szerokolistnej. File:Breitbl. Knabenkraut (Dactylorhiza majalis)@20170620 07.jpg|Owoce kukułki szerokolistnej. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza majalis|Kukułka szerokolistna}} {{BrClear}} ==== [[w:Kukułka bzowa|Kukułka bzowa]] (''Dactylorhiza sambucina'' (L.) Soó) ==== <gallery> File:Dactylorhiza sambucina distribution in Poland.svg|Występowanie kukułki bzowej w Polsce. File:Dactylorhiza sambucina 040531Bw.jpg|Kukułka bzowa. File:Dactylorhiza sambucina - Flickr 003.jpg|Kukułka bzowa. File:Dactylorhiza sambucina 22.jpg|Kukułka bzowa. File:Dactylorhiza sambucina white NRM.jpg|Kukułka bzowa. File:Elder-flowered Orchid - Dactylorhiza sambucina (16601774853).jpg|Kwiatostan kukułki bzowej. File:Elder-flowered Orchid - Dactylorhiza sambucina (17131051788).jpg|Kwiatostan kukułki bzowej. File:Elder-flowered Orchid - Dactylorhiza sambucina (16605063963).jpg|Kwiaty kukułki bzowej. File:Elder-flowered Orchid - Dactylorhiza sambucina (17131395168).jpg|Kwiaty kukułki bzowej. File:Elder-flowered Orchid - Dactylorhiza sambucina (14142366578).jpg|Kwiat kukułki bzowej. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza sambucina|Kukułka bzowa}} {{BrClear}} ==== [[w:Kukułka Ruthego|Kukułka Ruthego]] (''Dactylorhiza traunsteineri'' (Saut. ex Rchb.) Soó) ==== <gallery> File:Dactylorhiza ruthei distribution in Poland.svg|Występowanie kukułki Ruthego w Polsce. File:Dactylorhiza traunsteineri ENBLA01.jpg|Kukułka Ruthego. File:Narrow-leaved Marsh Orchid - Dactylorhiza traunsteineri (18923673042).jpg|Kukułka Ruthego. File:Petit orchis de mai (Vosges).jpg|Kukułka Ruthego. File:Narrow-leaved Marsh Orchid - Dactylorhiza traunsteineri (18761698458).jpg|Kwiatostan kukułki Ruthego. File:Narrow-leaved Marsh Orchid - Dactylorhiza traunsteineri (?) (14401726448).jpg|Kwiat kukułki Ruthego. File:Narrow-leaved Marsh Orchid - Dactylorhiza traunsteineri (18742772149).jpg|Kwiat kukułki Ruthego. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza traunsteineri|Kukułka Ruthego}} {{BrClear}} ==== [[w:Ozorka zielona|Ozorka zielona]] (''Dactylorhiza viridis'' (L.) R.M. Bateman, A.M. Pridgeon & M.W. Chase) ==== <gallery> File:Coeloglossum viride distribution in Poland.svg|Występowanie ozorki zielonej w Polsce. File:Coeloglossum viride 01 mg-k.jpg|Ozorka zielona. File:Coeloglossum viride 240708a.jpg|Ozorka zielona. File:Coeloglossum viride 08 mg-k.jpg|Liście i pąki kwiatowe ozorki zielonej. File:Green Orchid (4750581619).jpg|Ozorka zielona z pąkami kwiatowymi. File:Coeloglossum viride 09 mg-k.jpg|Pąki kwiatowe ozorki zielonej. File:Coeloglossum viride 02 mg-k.jpg|Kwiatostan ozorki zielonej. File:Frog Orchid - Coeloglossum viride (14248335958).jpg|Kwiatostan ozorki zielonej. File:Dactylorhiza viridis 2.JPG|Kwiatostan ozorki zielonej. File:Frog Orchid - Coeloglossum viride (14402546082).jpg|Kwiaty ozorki zielonej. File:Coeloglossum viride 04 mg-k.jpg|Kwiat ozorki zielonej. File:Frog Orchid (Coeloglossum viride) - geograph.org.uk - 1255029.jpg|Owoce ozorki zielonej. </gallery> {{Atlas flory Polski/Commons|Dactylorhiza viridis|Ozorka zielona}} {{BrClear}} === Kruszczyk (''Epipactis'') === ==== [[w:Kruszczyk połabski|Kruszczyk połabski]] (''Epipactis albensis'' (Nováková & Rydlo) ==== <gallery> File:Epipactis albensis distribution in Poland.svg|Występowanie kruszczyka połabskiego w Polsce. File:Epipactis albensis 01.jpg|Kruszczyk połabski. File:Epipactis albensis 03.JPG|Kruszczyk połabski. File:Komín023.jpg|Kwiaty kruszczyka połabskiego. File:Epipactis albensis 02.jpg|Kwiaty kruszczyka połabskiego. </gallery> {{Atlas flory Polski/Commons|Epipactis albensis|Kruszczyk połabski}} {{BrClear}} ==== [[w:Kruszczyk rdzawoczerwony|Kruszczyk rdzawoczerwony]] (''Epipactis atrorubens'' (Hoffm.) Besser) ==== <gallery> File:Epipactis atrorubens distribution in Poland.svg|Występowanie kruszczyka rdzawoczerwonego w Polsce. File:Dark Red Helleborine - Epipactis atrorubens (14650992305).jpg|Kruszczyk rdzawoczerwony. File:Epipactis atrorubens kz02.jpg|Kruszczyk rdzawoczerwony. File:Dark Red Helleborine - Epipactis atrorubens (14217279438).jpg|Kruszczyk rdzawoczerwony. File:Epipactis atrorubens kz01.jpg|Liście kruszczyka rdzawoczerwonego. File:Epipactis atrorubens ENBLA03.jpeg|Liście kruszczyka rdzawoczerwonego. File:Epipactis atrorubens Saarland 11.jpg|Liście i pąki kwiatowe kruszczyka rdzawoczerwonego. File:Dark-Red Helleborine - Epipactis atrorubens (19279794356).jpg|Kwiatostan kruszczyka rdzawoczerwonego. File:Dark Red Helleborine - Epipactis atrorubens (28100920901).jpg|Kwiatostan kruszczyka rdzawoczerwonego. File:Dark Red Helleborine - Epipactis atrorubens (14464586597).jpg|Kwiat kruszczyka rdzawoczerwonego. File:Dark Red Helleborine - Epipactis atrorubens (14474585237).jpg|Kwiat kruszczyka rdzawoczerwonego. File:Epipactis atrorubens PID845-2.jpg|Kwiaty kruszczyka rdzawoczerwonego. File:PP Cvičák (u Českého Krumlova) (36) kruštík tmavočervený Epipactis atrorubens (cropped).jpg|Owoce kruszczyka rdzawoczerwonego. </gallery> {{Atlas flory Polski/Commons|Epipactis atrorubens|Kruszczyk rdzawoczerwony}} {{BrClear}} ==== [[w:Kruszczyk krótkolistny|Kruszczyk krótkolistny]] (''Epipactis distans'' Arv.-Touv.) ==== <gallery> File:Epipactis distans Luxemburg 001.jpg|Kruszczyk krótkolistny. File:Epipactis helleborine distans 150705a.jpg|Kruszczyk krótkolistny. File:Epipactis helleborine 060728 ganz+vorjaehrig.jpg|Kruszczyk krótkolistny. File:Epipactis helleborine top.jpg|Liście i pąki kwiatowe kruszczyka krótkolistnego. File:Epipactis helleborine distans 150705.jpg|Kwiatostan kruszczyka krótkolistnego. File:Epipactis distans Luxemburg 002.jpg|Kwiaty kruszczyka krótkolistnego. File:Epipactis distans Luxemburg 016.jpg|Kwiat kruszczyka krótkolistnego. </gallery> {{Atlas flory Polski/Commons|Epipactis distans|Kruszczyk krótkolistny}} {{BrClear}} ==== [[w:Kruszczyk Greutera|Kruszczyk Greutera]] (''Epipactis greuteri'' H. Baumann & Künkele) ==== <gallery> File:Epipactis greuteri DIS01.jpg|Kwiat kruszczyka Greutera. </gallery> {{Atlas flory Polski/Commons|Epipactis greuteri|Kruszczyk Greutera}} {{BrClear}} ==== [[w:Kruszczyk szerokolistny|Kruszczyk szerokolistny]] (''Epipactis helleborine'' (L.) Crantz) ==== <gallery> File:Epipactis helleborine distribution in Poland.svg|Występowanie kruszczyka szerokolistnego w Polsce. File:Breitblättrige Stendelwurz (Epipactis helleborine) 02.jpg|Kruszczyk szerokolistny. File:Epipactis helleborine plant 110703.jpg|Kruszczyk szerokolistny. File:Epipactis helleborine kz5.jpg|Korzenie kruszczyka szerokolistnego. File:Epipactis helleborine Trélissac 12 06 09 (1).JPG|Liście kruszczyka szerokolistnego. |File:Epipactis helleborine R.H. 09.jpg|Liść kruszczyka szerokolistnego od spodu. File:Broad-leaved Helleborine Orchid - Epipactis helleborine, Garrett County, Maryland.jpg|Kruszczyk szerokolistny z pąkami kwiatowymi. File:Epipactis helleborine by Danny S. - 009.jpg|Pąki kwiatowe kruszczyka szerokolistnego. File:Epipactis16072009.jpg|Kwiatostan kruszczyka szerokolistnego. File:Broad-leaved Helleborine (Epipactis helleborine) - MacGregor Point Provincial Park 01.jpg|Kwiatostan kruszczyka szerokolistnego. File:Broad-leaved Helleborine (Epipactis helleborine) - MacGregor Point Provincial Park 05.jpg|Kwiat kruszczyka szerokolistnego. File:Broad-leaved Helleborine (Epipactis helleborine) - MacGregor Point Provincial Park 03.jpg|Kwiat kruszczyka szerokolistnego. File:Epipactis helleborine Trélissac 06 09 09 (1).JPG|Owoce kruszczyka szerokolistnego. File:Epipactis helleborine kz01.jpg|Młoda roślina kruszczyka szerokolistnego. </gallery> {{Atlas flory Polski/Commons|Epipactis helleborine|Kruszczyk szerokolistny}} {{BrClear}} ==== [[w:Kruszczyk ostropłatkowy|Kruszczyk ostropłatkowy]] (''Epipactis leptochila'' subsp. ''neglectica'' Godfery) ==== <gallery> File:Epipactis leptochila Saarland 03.jpg|Kruszczyk ostropłatkowy. File:Epipactis leptochila 180706a.jpg|Kruszczyk ostropłatkowy. File:Mg-k drf02079 epipactis leptochila altensteiniana.jpg|Kruszczyk ostropłatkowy. File:Epipactis leptochila var cleistogama 220712.JPG|Pąki kwiatowe kruszczyka ostropłatkowego. File:Epipactis leptochila Saarland 12.jpg|Kwiatostan kruszczyka ostropłatkowego. File:Epipactis leptochila 280705.jpg|Kwiaty kruszczyka ostropłatkowego. File:Epipactis leptochila Saarland 11.jpg|Kwiaty kruszczyka ostropłatkowego. File:Epipactis leptochila 180706.jpg|Kwiat kruszczyka ostropłatkowego. </gallery> {{Atlas flory Polski/Commons|Epipactis leptochila|Kruszczyk ostropłatkowy}} {{BrClear}} ==== [[w:Kruszczyk drobnolistny|Kruszczyk drobnolistny]] (''Epipactis microphylla'' (Ehrh.) Sw.) ==== <gallery> File:Epipactis microphylla distribution in Poland.svg|Występowanie kruszczyka drobnolistnego w Polsce. File:Epipactis microphylla Saarland 01.jpg|Kruszczyk drobnolistny. File:Epipactis microphylla Trélissac 08 05 2011 (5).JPG|Liście kruszczyka drobnolistnego. File:Epipactis microphylla Trélissac 08 05 2011 (6).JPG|Pąki kwiatowe kruszczyka drobnolistnego. File:Epipactis microphylla 01.jpg|Kwiatostan kruszczyka drobnolistnego. File:Epipactis microphylla Saarland 02.jpg|Kwiaty kruszczyka drobnolistnego. </gallery> {{Atlas flory Polski/Commons|Epipactis microphylla|Kruszczyk drobnolistny}} {{BrClear}} ==== [[w:Kruszczyk Muellera|Kruszczyk Muellera]] (''Epipactis muelleri'' Godfery) ==== <gallery> File:Epipactis muelleri 280607.jpg|Kruszczyk Muellera. File:Epipactis muelleri Orchi 101.jpg|Kruszczyk Muellera. File:Epipactis muelleri plant.jpg|Kruszczyk Muellera. File:Epipactis muelleri 140505.jpg|Liście kruszczyka Muellera. File:Epipactis de Mueller Trélissac 27 06 09 (37).JPG|Liście kruszczyka Muellera. File:Epipactis de Mueller Trélissac 12 06 09 (2).JPG|Pąki kwiatowe kruszczyka Muellera. File:Epipactis muelleri (14248303539).jpg|Kwiatostan kruszczyka Muellera. File:Epipactis muelleri 010707.jpg|Kwiatostan kruszczyka Muellera. File:Epipactis muelleri - panoramio (11).jpg|Kwiat kruszczyka Muellera. File:Epipactis muelleri 290608.jpg|Kwiaty kruszczyka Muellera. File:Flickr - don macauley - Narrow Lipped Helleborine.jpg|Kwiaty kruszczyka Muellera. File:Epipactis de Mueller Trélissac 18 07 09 (3).JPG|Owoce kruszczyka Muellera. </gallery> {{Atlas flory Polski/Commons|Epipactis muelleri|Kruszczyk Muellera}} {{BrClear}} ==== [[w:Kruszczyk błotny|Kruszczyk błotny]] (''Epipactis palustris'' (L.) Crantz) ==== <gallery> File:Epipactis palustris distribution in Poland.svg|Występowanie kruszczyka błotnego w Polsce. File:Epipactis palustris 230705.jpg|Kruszczyk błotny. File:Epipactis palustris b3.JPG|Kruszczyk błotny. File:Marsh Helleborine - Epipactis palustris (11775538734).jpg|Kruszczyk błotny. File:Epipactis palustris kz01.jpg|Liście kruszczyka błotnego. File:PNBT Epipactis palustris liść 03.07.10 pl.jpg|Liść kruszczyka błotnego. File:PNBT Epipactis palustris pąk3 03.07.10 pl.jpg|Pąki kwiatowe kruszczyka błotnego. File:Marsh Helleborine - Epipactis palustris (14509301446).jpg|Kwiatostan kruszczyka błotnego. File:Epipactis palustris - inflorescence 01.jpg|Kwiatostan kruszczyka błotnego. File:Epipactis palustris b5.JPG|Kwiat kruszczyka błotnego. File:Epipactis palustris - flower.jpg|Kwiat kruszczyka błotnego. File:Epipactis palustris 004.JPG|Kwiaty kruszczyka błotnego. File:Epipactis palustris - fruits 01.jpg|Owoce kruszczyka błotnego. File:Epipactis palustris young capsules Hompelvoet RF.JPG|Owoce kruszczyka błotnego. </gallery> {{Atlas flory Polski/Commons|Epipactis palustris|Kruszczyk błotny}} {{BrClear}} ==== [[w:Kruszczyk siny|Kruszczyk siny]] (''Epipactis purpurata'' Sm.) ==== <gallery> File:Epipactis purpurata distribution in Poland.svg|Występowanie kruszczyka sinego w Polsce. File:Epipactis purpurata 020806.JPG|Kruszczyk siny. File:Epipactis purpurata plant.jpg|Kruszczyk siny. File:Violet Helleborine - Epipactis purpurata - panoramio (11).jpg|Kruszczyk siny z pąkami kwiatowymi. File:Violet Helleborine - Epipactis purpurata - panoramio (1).jpg|Liście kruszczyka sinego. File:Epipactis purpurata plant2.jpg|Liście i pąki kwiatowe kruszczyka sinego. File:Epipactis purpurata - panoramio - Björn S. (37).jpg|Kwiatostan kruszczyka sinego. File:Violet Helleborine - Epipactis purpurata - panoramio - Björn S. (68).jpg|Kwiatostan kruszczyka sinego. File:Violet Helleborine - Epipactis purpurata - panoramio - Björn S. (19).jpg|Kwiatostan kruszczyka sinego. File:Epipactis purpurata 300705b.jpg|Kwiaty kruszczyka sinego. File:Epipactis purpurata (29581997992).jpg|Kwiat kruszczyka sinego. </gallery> {{Atlas flory Polski/Commons|Epipactis purpurata|Kruszczyk siny}} {{BrClear}} === Storzan (''Epipogium'') === ==== [[w:Storzan bezlistny|Storzan bezlistny]] (''Epipogium aphyllum'' Sw.) ==== <gallery> File:Epipogium aphyllum distribution in Poland.svg|Występowanie storzana bezlistnego w Polsce. File:Epipogium aphyllum plants.jpg|Storzan bezlistny. File:Epipogium aphyllum Luxembourg 060.jpg|Storzan bezlistny. File:Epipogium aphyllum 010804.jpg|Storzan bezlistny. File:Epipogium aphyllum Luxembourg 36.jpg|Kwiatostan storzana bezlistnego. File:Epipogium aphyllum Luxembourg 005.jpg|Kwiatostan storzana bezlistnego. File:Epipogium aphyllum Luxemburg 065.jpg|Kwiaty storzana bezlistnego. File:Epipogium aphyllum Luchon.jpg|Kwiaty storzana bezlistnego. File:Epipogium aphyllum - Alutaguse.jpg|Kwiat storzana bezlistnego. </gallery> {{Atlas flory Polski/Commons|Epipogium aphyllum|Storzan bezlistny}} {{BrClear}} === Tajęża (''Goodyera'') === ==== [[w:Tajęża jednostronna|Tajęża jednostronna]] (''Goodyera repens'' (L.) R. Br.) ==== <gallery> File:Goodyera repens (habitus).jpg|Tajęża jednostronna. File:Goodyera-repens-mgk2.jpg|Tajęża jednostronna. File:Goodyera repens Rheinland-Pfalz 01.jpg|Tajęża jednostronna. File:0rchideen 15.jpg|Tajęża jednostronna z pąkami kwiatowymi. File:Goodyera repens kz01.jpg|Kłącze tajęży jednostronnej. File:Goodyera repens - Flickr 024.jpg|Liście tajęży jednostronnej. File:Goodyera repens Rheinland-Pfalz 02.jpg|Liście tajęży jednostronnej. File:Godyera repens 190206.jpg|Liść tajęży jednostronnej. File:Goodyera-repens-mgk1.jpg|Pąki kwiatowe tajęży jednostronnej. File:Goodyera repens ENBLA02.jpg|Kwiatostan tajęży jednostronnej. File:Goodyera repens 2.jpeg|Kwiaty tajęży jednostronnej. File:Goodyera-repens-mgk6.jpg|Kwiaty tajęży jednostronnej. File:Goodyera kz2.jpg|Owoce tajęży jednostronnej. </gallery> {{Atlas flory Polski/Commons|Goodyera repens|Tajęża jednostronna}} {{BrClear}} === Gółka (''Gymnadenia'') === ==== [[w:Gółka długoostrogowa|Gółka długoostrogowa]] (''Gymnadenia conopsea'' (L.) R. Br) ==== <gallery> File:Fragrant Orchid - Gymnadenia conopsea (12233626643).jpg|Gółka długoostrogowa. File:Gymnadenia conopsea (Mount Shirouma s2).JPG|Gółka długoostrogowa. File:Gymnadenia conopsea 030710.jpg|Gółka długoostrogowa. File:Orchidaceae - Gymnadenia conopsea-2.JPG|Liście gółki długoostrogowej. File:Fragrant orchid - Gymnadenia conopsea (12190239995).jpg|Gółka długoostrogowa z pąkami kwiatowymi. File:Fragrant orchid - Gymnadenia conopsea (12190237575).jpg|Pąki kwiatowe gółki długoostrogowej. File:Fragrant orchid - Gymnadenia conopsea (11727976185).jpg|Kwiatostan gółki długoostrogowej. File:Gymnadenia conopsea Saarland 03.jpg|Kwiaty gółki długoostrogowej. File:Fragrant Orchid - Gymnadenia conopsea (27347924293).jpg|Kwiat gółki długoostrogowej. File:Gymnadenia conopsea var. alba Saarland 01.jpg|Kwiaty gółki długoostrogowej, formy białokwiatowej. File:Fragrant orchid - Gymnadenia conopsea - panoramio.jpg|Owoce gółki długoostrogowej. File:Protocorm of Gymnadenia conopsea elongated after use of kinetine.tif|Protokorm gółki długoostrogowej. </gallery> {{Atlas flory Polski/Commons|Gymnadenia conopsea|Gółka długoostrogowa}} {{BrClear}} ==== [[w:Gółka wonna|Gółka wonna]] (''Gymnadenia odoratissima'' (L.) Rich.) ==== <gallery> File:Gymnadenia odoratissima RHu 01.JPG|Gółka wonna. File:Gymnadenia odoratissima 090705a.jpg|Gółka wonna. File:Gymnadenia odoratissima 05.jpg|Gółka wonna. File:Gymnadenia odoratissima ENBLA03.jpg|Liście gółki wonnej. File:Gymnadenia odoratissima 260610.jpg|Kwiatostan gółki wonnej. File:Gymnadenia odoratissima RHu 002.JPG|Kwiatostan gółki wonnej. File:Gymnadenia odoratissima flowers.jpg|Kwiaty gółki wonnej. File:Gymnadenia odoratissima (16286984585).jpg|Kwiaty gółki wonnej. File:Gymnadenia odoratissima PID848-2.jpg|Kwiaty gółki wonnej. </gallery> {{Atlas flory Polski/Commons|Gymnadenia odoratissima|Gółka wonna}} {{BrClear}} === Wątlik (''Hammarbya'') === ==== [[w:Wątlik błotny|Wątlik błotny]] (''Hammarbya paludosa'' (L.) Kuntze) ==== <gallery> File:Hammarbya paludosa Belgien 01.jpg|Wątlik błotny. File:Hammarbya paludosa Niedersachsen 01.jpg|Wątlik błotny. File:Hammarbya paludosa Belgien 03.jpg|Wątlik błotny. File:Hammarbya paludosa Belgien 05.jpg|Kwiatostan wątlika błotnego. File:Bog orchid - Veenmosorchis - Hammarbya paludosa.tif|Kwiatostan wątlika błotnego. File:Hammarbya paludosa Niedersachsen 02.jpg|Kwiaty wątlika błotnego. </gallery> {{Atlas flory Polski/Commons|Hammarbya paludosa|Wątlik błotny}} {{BrClear}} === Miodokwiat (''Herminium'') === ==== [[w:Miodokwiat krzyżowy|Miodokwiat krzyżowy]] (''Herminium monorchis'' (L.) R. Br.) ==== <gallery> File:Musk Orchids (Herminium monorchis) - geograph.org.uk - 863976.jpg|Miodokwiat krzyżowy. File:Herminium monorchis (plant).jpg|Miodokwiat krzyżowy. File:Herminium monorchis 230705.jpg|Miodokwiat krzyżowy. File:Herminium monorchis (flower spike).jpg|Kwiatostan miodokwiatu krzyżowego. File:Herminium monorchis (flowers).jpg|Kwiaty miodokwiatu krzyżowego. File:Herminium monorchis (flowers close).jpg|Kwiaty miodokwiatu krzyżowego. File:Herminium monorchis detail.jpeg|Kwiaty miodokwiatu krzyżowego. </gallery> {{Atlas flory Polski/Commons|Herminium monorchis|Miodokwiat krzyżowy}} {{BrClear}} === Lipiennik (''Liparis'') === ==== [[w:Lipiennik Loesela|Lipiennik Loesela]] (''Liparis loeselii'' (L.) Rich.) ==== <gallery> File:Liparis loeselii 03.jpg|Lipiennik Loesela. File:Liparis loeselii 10.jpg|Lipiennik Loesela. File:Liparis loeselii - Liparis de Loesel - Somme.jpg|Lipiennik Loesela. File:Liparis loeselii - Flickr 003.jpg|Lipiennik Loesela. File:Liparis loeselii Orchi 003.jpg|Kwiatostan lipiennika Loesela. File:Liparis loeselli PID1306-6.jpg|Kwiaty lipiennika Loesela. File:Liparis loeselii 02.jpg|Kwiaty lipiennika Loesela. File:Liparis loeselii - fruits.jpg|Owoce lipiennika Loesela. </gallery> {{Atlas flory Polski/Commons|Liparis loeselii|Lipiennik Loesela}} {{BrClear}} === Wyblin (''Malaxis'') === ==== [[w:Wyblin jednolistny|Wyblin jednolistny]] (''Malaxis monophyllos'' (L.) Sw.) ==== <gallery> File:Malaxis monophyllos - habitus 02.jpg|Wyblin jednolistny. File:Malaxis monophyllos plant270603.jpg|Wyblin jednolistny. File:Malaxis monophyllos - habitus 01.jpg|Wyblin jednolistny. File:Malaxis monophyllos - folia.jpg|Liść wyblinu jednolistnego. File:Malaxis monophyllos - flora.jpg|Kwiaty wyblinu jednolistnego. File:Malaxis monophyllos 140706.jpg|Kwiaty wyblinu jednolistnego. File:Malaxis monophyllos - fruit.jpg|Owoc wyblinu jednolistnego. </gallery> {{Atlas flory Polski/Commons|Malaxis monophyllos|Wyblin jednolistny}} {{BrClear}} === ''Neotinea'' === ==== [[w:Storczyk trójzębny|Storczyk trójzębny]] (''Neotinea tridentata'' (Scop.) R.M.Bateman, Pridgeon & M.W.Chase) ==== <gallery> File:Orchis tridentata 02 mg-k.jpg|Storczyk trójzębny. File:Orchis tridentata 05 mg-k.jpg|Storczyk trójzębny. File:Orchis tridentata PID821-1.jpg|Storczyk trójzębny. File:Orchis neotinea (cropped).jpg|Liście storczyka trójzębnego. File:Orchis tridentata PID821-2.jpg|Pąki kwiatowe storczyka trójzębnego. File:Orchis tridentata PID1536-3.jpg|Kwiatostan storczyka trójzębnego. File:Orchis tridentata-Blueten-2.jpg|Kwiatostan storczyka trójzębnego. File:Orchis tridentata 03 mg-k.jpg|Kwiatostan storczyka trójzębnego. File:Orchis tridentata - Flickr 003.jpg|Kwiaty storczyka trójzębnego. File:Orchis tridentata 08 mg-k.jpg|Kwiaty storczyka trójzębnego. File:Orchis tridentata PID822-3.jpg|Kwiaty storczyka trójzębnego. </gallery> {{Atlas flory Polski/Commons|Neotinea tridentata|Storczyk trójzębny}} {{BrClear}} ==== [[w:Storczyk drobnokwiatowy|Storczyk drobnokwiatowy]] (''Neotinea ustulata'' (L.) R.M.Bateman, Pridgeon & M.W.Chase) ==== <gallery> File:Neotinea ustulata subsp. ustulata sl7.jpg|Storczyk drobnokwiatowy. File:Burnt-tip Orchid - Neotinea ustulata (13912451262).jpg|Storczyk drobnokwiatowy. File:Neotinea ustulata (habitus).jpg|Storczyk drobnokwiatowy. File:Orchis ustulata leaves 200404.jpg|Liście storczyka drobnokwiatowego. File:Orchis ustulata Saarland 18.04.2011 - 065.jpg|Storczyk drobnokwiatowy z pąkami kwiatowymi. File:Burnt-tip Orchid - Neotinea ustulata - panoramio (28).jpg|Kwiatostan storczyka drobnokwiatowego. File:Burnt-tip Orchid - Neotinea ustulata (17215381169).jpg|Kwiatostan storczyka drobnokwiatowego. File:Burnt Orchid (Orchis ustulata) (14036279479).jpg|Pąki kwiatowe storczyka drobnokwiatowego. File:Neotinea ustulata Taubergießen 11.jpg|Kwiaty storczyka drobnokwiatowego. File:Burnt-tip Orchid - Neotinea ustulata (17195873527).jpg|Kwiaty storczyka drobnokwiatowego. File:Burnt-tip Orchid - Neotinea ustulata (17405391302).jpg|Kwiaty storczyka drobnokwiatowego. File:Burnt-tip Orchid - Neotinea ustulata - panoramio (10).jpg|Owoce storczyka drobnokwiatowego. </gallery> {{Atlas flory Polski/Commons|Neotinea ustulata|Storczyk drobnokwiatowy}} {{BrClear}} === Gnieźnik (''Neottia'') === ==== [[w:Gnieźnik sercowaty|Gnieźnik sercowaty]], listera sercowata (''Neottia cordata'' (L.) Rich. ) ==== <gallery> File:Heartleaf Twayblade (3816689446).jpg|Gnieźnik sercowaty. File:Listera cordata 130506b.jpg|Gnieźnik sercowaty. File:Listera cordata inflore2.jpg|Gnieźnik sercowaty. File:Listera cordata 030905.jpg|Pędy wegetatywne gnieźnika sercowatego. File:Neottia cordata 3.JPG|Liście gnieźnika sercowatego. File:Listera cordata 130506c.jpg|Kwiatostan gnieźnika sercowatego. File:Listera-cordata uk.jpg|Kwiaty gnieźnika sercowatego. File:Neottia cordata crooped1.jpg|Kwiat gnieźnika sercowatego. </gallery> {{Atlas flory Polski/Commons|Neottia cordata|Listera sercowata}} {{BrClear}} ==== [[w:Gnieźnik leśny|Gnieźnik leśny]] (''Neottia nidus-avis'' (L.) Rich.) ==== <gallery> File:Neottia nidus-avis Saarland 010.jpg|Gnieźnik leśny. File:Neottia nidus-avis plants.jpg|Gnieźnik leśny. File:Neottia nidus-avis 290508.jpg|Gnieźnik leśny. File:Neottia nidus-avis - Pruunikas pesajuur Keila.jpg|Gnieźnik leśny. File:Bird's-Nest Orchid - Neottia nidus-avis (13801804554).jpg|Liście i pąki kwiatowe gnieźnika leśnego. File:Vogel-Nestwurz Neottia nidus-avis.jpg|Kwiatostan gnieźnika leśnego. File:Bird's-nest Orchid - Neottia nidus-avis (12205614283).jpg|Kwiatostan gnieźnika leśnego. File:Bird's-Nest Orchid - Neottia nidus-avis (14087462318).jpg|Kwiatostan gnieźnika leśnego. File:NEOTTIA NIDUS AVIS. (4).jpg|Kwiaty gnieźnika leśnego. File:Bird's-nest Orchid - Neottia nidus-avis (12157936184).jpg|Kwiat gnieźnika leśnego. File:Bird's-Nest Orchid - Neottia nidus-avis (27136408670).jpg|Kwiat gnieźnika leśnego. File:Neottia nidus-avis P26.jpg|Kwiat gnieźnika leśnego. File:Slovenia (16287237825).jpg|Owoce gnieźnika leśnego. </gallery> {{Atlas flory Polski/Commons|Neottia nidus-avis|Gnieźnik leśny}} {{BrClear}} ==== [[w:Listera jajowata|Listera jajowata]], gnieźnik jajowaty (''Neottia ovata'' (L.) Bluff & Fingerh.) ==== <gallery> File:Listera ovata Saarland 11.jpg|Listera jajowata. File:Neottia ovata R.H (1).JPG|Listera jajowata. File:Common Twayblade - Neottia ovata (11948022546).jpg|Listera jajowata. File:Neottia ovata R.H (22).JPG|Liście listery jajowatej. File:Neottia ovata R.H (12).JPG|Liść listery jajowatej. File:Neottia ovata R.H (11).JPG|Liść listery jajowatej od spodu. File:Listera ovata Saarland 02.jpg|Listera jajowata z pąkami kwiatowymi. File:Neottia ovata R.H (15).JPG|Pąki kwiatowe listery jajowatej. File:Common Twayblade - Neottia ovata (13972344888).jpg|Kwiatostan listery jajowatej. File:Common Twayblade - Neottia ovata (11728427334).jpg|Kwiat listery jajowatej. File:Common Twayblade - Neottia ovata (11728282633).jpg|Kwiat listery jajowatej. File:Neottia ovata (8998591255).jpg|Kwiat listery jajowatej. File:Listera ovata RHu 03.JPG|Owoce listery jajowatej. </gallery> {{Atlas flory Polski/Commons|Neottia ovata|Listera jajowata}} {{BrClear}} === Kukuczka (''Neottianche'') === ==== [[w:Kukuczka kapturkowata|Kukuczka kapturkowata]] (''Neottianthe cucullata'' (L.) Schltr.) ==== <gallery> File:Neottianthe cucullata s2.JPG|Kukuczka kapturkowata. File:Neottianthe cucullata.JPG|Kukuczka kapturkowata. File:Neottianthe cucullata (leaf).JPG|Liście kukuczki kapturkowatej. File:Ponerorchis cucullata.tif|Kwiatostan kukuczki kapturkowatej. File:Neottianthe cucullata (flower s2).JPG|Kwiatostan kukuczki kapturkowatej. File:Neottianthe cucullata (flower).JPG|Kwiaty kukuczki kapturkowatej. File:Neottianthe cucullata (flower s3).JPG|Kwiaty kukuczki kapturkowatej. File:Neottianthe cucullata (flower s3) - cropped.jpg|Kwiaty kukuczki kapturkowatej. </gallery> {{Atlas flory Polski/Commons|Ponerorchis cucullata|Kukuczka kapturkowata}} {{BrClear}} === Dwulistnik (''Ophrys'') === ==== [[w:Dwulistnik muszy|Dwulistnik muszy]] (''Ophrys insectifera'' L.) ==== <gallery> File:Ophrys insectifera 210407.jpg|Dwulistnik muszy. File:Ophrys.insectifera.8255.jpg|Dwulistnik muszy. File:Ophrys insectifera subsp. insectifera sl5.jpg|Dwulistnik muszy. File:Ophrys insectifera subsp. insectifera sl3.jpg|Kwiatostan dwulistnika muszego. File:Fly Orchid - Ophrys insectifera (14158787284).jpg|Kwiatostan dwulistnika muszego. File:Ophrys insectifera - Kärbesõis Niitvälja 1.jpg|Kwiatostan dwulistnika muszego. File:Fliegen-Ragwurz Ophrys insectifera.jpg|Kwiat dwulistnika muszego. File:Fly Orchid - Ophrys insectifera (13925535775).jpg|Kwiat dwulistnika muszego. File:Fly Orchid - Ophrys insectifera (18828835768).jpg|Kwiat dwulistnika muszego. File:Ophrys insectifera 060705.jpg|Owoc dwulistnika muszego. dwulistnika muszego. </gallery> {{Atlas flory Polski/Commons|Ophrys insectifera|Dwulistnik muszy}} {{BrClear}} === Storczyk (''Orchis'') === ==== [[w:Storczyk męski|Storczyk męski]] (''Orchis mascula'' (L.) L.) ==== <gallery> File:NSG HA 074 Steinberg bei Wesseln - unterhalb vom Flugplatz - Knabenkraut (31).jpg|Storczyki męskie na łące. File:01170 Échenevex, France - panoramio (10).jpg|Storczyk męski. File:Early Purple Orchid - Orchis mascula (14033422989).jpg|Storczyk męski. File:Orchis mascula 001.JPG|Storczyk męski. File:Orchid - panoramio (13).jpg|Storczyk męski z pąkami kwiatowymi. File:Early Purple Orchid - Orchis mascula (14142411010).jpg|Pąki kwiatowe storczyka męskiego. File:Orchis mascula 024.JPG|Kwiatostan storczyka męskiego. File:Early Purple Orchid - Orchis mascula (26661612853).jpg|Kwiatostan storczyka męskiego. File:Early Purple Orchid - Orchis mascula (14325701861).jpg|Kwiat storczyka męskiego. File:Orchis mascula 056.JPG|Kwiaty storczyka męskiego. File:Orchis mascula ziedai.JPG|Kwiaty storczyka męskiego. File:Orchis mascula var. alba Saarland 03.jpg|Kwiaty storczyka męskiego, formy białkowiatowej. </gallery> {{Atlas flory Polski/Commons|Orchis mascula|Storczyk męski}} {{BrClear}} ==== [[w:Storczyk kukawka|Storczyk kukawka]] (''Orchis militaris'' L.) ==== <gallery> File:Orchis militaris 140506.jpg|Storczyki kukawka na łące. File:Orchis militaris sl29.jpg|Storczyk kukawka. File:Military orchid - Orchis militaris (11931807166).jpg|Storczyk kukawka. File:Hall käpp - Orchis militaris.jpg|Storczyk kukawka. File:Orchis militaris 02.JPG|Storczyk kukawka z pąkami kwiatowymi. File:Military Orchid - Orchis militaris (13915360428).jpg|Kwiatostan File:Military Orchid - Orchis militaris (14122200673).jpg|Kwiatostan File:Military orchid - Orchis militaris (11930754705).jpg|Kwiatostan storczyka kukawki widziany od góry. File:Military Orchid - Orchis militaris (14123286766).jpg|Kwiat storczyka kukawki. File:Military Orchid - Orchis militaris (13915495210).jpg|Kwiat storczyka kukawki. File:Military Orchid - Orchis militaris (14143077785).jpg|Kwiaty storczyka kukawki. File:Orchis militaris 50.jpg|Kwiat storczyka kukawki. </gallery> {{Atlas flory Polski/Commons|Orchis militaris|Storczyk kukawka}} {{BrClear}} ==== [[w:Storczyk blady|Storczyk blady]] (''Orchis pallens'' L.) ==== <gallery> File:Orchis pallens 270404.jpg|Storczyk blady. File:Orchis pallens PID784-1.jpg|Storczyk blady. File:Orchis pallens PID1030-1.jpg|Storczyk blady. File:Orchis pallens kz04.jpg|Storczyk blady. File:Orchis pallens PID1019-1.jpg|Kwiatostan storczyka bladego. File:Pale Orchid - Orchis pallens (17356819795).jpg|Kwiatostan storczyka bladego. File:Orchis pallens kz08.jpg|Kwiatostan storczyka bladego. File:Orchis pallens flowers.jpg|Kwiaty storczyka bladego. File:Orchis pallens PID784-3.jpg|Kwiat storczyka bladego. File:Pale Orchid - Orchis pallens (17351538325).jpg|Kwiat storczyka bladego. File:Pale Orchid - Orchis pallens (17327314366).jpg|Kwiat storczyka bladego. </gallery> {{Atlas flory Polski/Commons|Orchis pallens|Storczyk blady}} {{BrClear}} ==== [[w:Storczyk purpurowy|Storczyk purpurowy]] (''Orchis purpurea'' Huds.) ==== <gallery> File:Orchis purpurea (26984057545).jpg|Storczyk purpurowy. File:Viry, France - panoramio (8).jpg|Storczyk purpurowy. File:Naturschutzgebiet Steinberg bei Wesseln - Purpur-Knabenkraut (6).jpg|Storczyk purpurowy. File:Repentance-0026.JPG|Storczyk purpurowy. File:Lady Orchid - Orchis purpurea (13672565223).jpg|Liście storczyka purpurowego. File:Naturschutzgebiet Steinberg bei Wesseln - Purpur-Knabenkraut - Knospe (11).jpg|Pąki kwiatowe storczyka purpurowego. File:Lady Orchid - Orchis purpurea (13915551810).jpg|Kwiatostan storczyka purpurowego. File:Lady Orchid - Orchis purpurea (14135635226).jpg|Kwiatostan storczyka purpurowego. File:Lady Orchid - Orchis purpurea (14155819372).jpg|Kwiatostan storczyka purpurowego. File:Lady Orchid - Orchis purpurea (13972024148).jpg|Kwiaty storczyka purpurowego. File:Orchis purpurea (14237241646).jpg|Kwiaty storczyka purpurowego. File:Orchis purpurea sl24.jpg|Kwiat storczyka purpurowego. File:Orchis purpurea sl26.jpg|Kwiat storczyka purpurowego. File:Orchis purpurea white Mariengarten 04.jpg|Kwiaty storczyka purpurowego, formy białokwiatowej. </gallery> {{Atlas flory Polski/Commons|Orchis purpurea|Storczyk purpurowy}} {{BrClear}} === Podkolan (''Platanthera'') === ==== [[w:Podkolan biały|Podkolan biały]] (''Platanthera bifolia'' (L.) Rich.) ==== <gallery> File:BecklMoorZwWaldhyaz04.jpg|Podkolan biały. File:Platanthera bifolia3.JPG|Podkolan biały. File:Platanthera bifolia (plant).jpg|Podkolan biały. File:Lesser Butterfly-orchid - Platanthera bifolia - panoramio (2).jpg|Podkolan biały. File:Platanthera bifolia lapai.JPG|Liście podkolanu białego. File:NPP Dlouhopolsko 24.jpg|Pąki kwiatowe podkolanu białego. File:Lesser Butterfly-Orchid - Platanthera bifolia (14178684513).jpg|Kwiatostan podkolanu białego. File:Platanthera bifolia 110608.jpg|Kwiatostan podkolanu białego. File:Lesser Butterfly-Orchid - Platanthera bifolia (14081573380).jpg|Kwiatostan podkolanu białego. File:Lesser Butterfly-orchid - Platanthera bifolia - panoramio (14).jpg|Kwiatostan podkolanu białego. File:Lesser Butterfly-Orchid - Platanthera bifolia (14081541220).jpg|Kwiaty podkolanu białego. File:Plantanthera bifolia m1.JPG|Kwiat podkolanu białego. File:Plantanthera bifolia p1.JPG|Kwiaty podkolanu białego. File:Platanthera bifolia20090812 025.jpg|Owoce podkolanu białego. </gallery> {{Atlas flory Polski/Commons|Platanthera bifolia|Podkolan biały}} {{BrClear}} ==== [[w:Podkolan zielonawy|Podkolan zielonawy]] (''Platanthera chlorantha'' (Custer) Rchb.) ==== <gallery> File:Platanthera.chlorantha.8264.jpg|Podkolan zielonawy. File:Platanthera chlorantha 2.jpg|Podkolan zielonawy. File:Platanthera chlorantha Luxemburg 01.jpg|Podkolan zielonawy. File:Platanthera chlorantha 2017-04-17 7735.jpg|Liście podkolanu zielonawego. File:Orchis verdâtre feuilles Terres blanches.JPG|Liście podkolanu zielonawego. File:Platanthera chlorantha Mariengarten 02.jpg|Pąki kwiatowe podkolanu zielonawego. File:Greater Butterfly-orchid - Platanthera chlorantha (11775632396).jpg|Kwiatostan podkolanu zielonawego. File:Greater Butterfly-Orchid - Platanthera chlorantha (11749695426).jpg|Kwiatostan podkolanu zielonawego. File:Greater Butterfly-Orchid - Platanthera chlorantha (14227861658).jpg|Kwiat podkolanu zielonawego. File:Platanthera chlorantha ENBLA02.jpg|Kwiat podkolanu zielonawego. File:Plantanthera clorantha 1.jpg|Kwiat podkolanu zielonawego. File:Platanthera chlorantha kz01.jpg|Młoda roślina podkolanu zielonawego. </gallery> {{Atlas flory Polski/Commons|Platanthera chlorantha|Podkolan zielonawy}} {{BrClear}} === Gołek (''Pseudorchis'') === ==== [[w:Gołek białawy|Gołek białawy]] (''Pseudorchis albida'' (L.) Á. Löve & D. Löve) ==== <gallery> File:Pseudorchis albida 010706.jpg|Gołek białawy. File:Pseudorchis albida (14811691828).jpg|Gołek białawy. File:Pseudorchis albida (14998302695).jpg|Gołek białawy. File:Pseudorchis albida Col de la Croix 2014 07 05 16.jpg|Kwiatostan gołka białawego. File:Pseudorchis albida (19502392509).jpg|Kwiatostan gołka białawego. File:Pseudorchis albida Col de la Croix 2014 07 05 13.jpg|Kwiatostan gołka białawego. File:Pseudorchis albida 010706a.jpg|Kwiaty gołka białawego. File:Pseudorchis albida (19523501830).jpg|Kwiaty gołka białawego. File:Pseudorchis albida Col de la Croix 2014 07 05 03.jpg|Kwiaty gołka białawego. File:Pseudorchis albida (14811646280).jpg|Kwiaty gołka białawego. File:Pseudorchis albida 300808.jpg|Owoce gołka białawego. </gallery> {{Atlas flory Polski/Commons|Pseudorchis albida|Gołek białawy}} {{BrClear}} === Kręczynka (''Spiranthes'') === ==== [[w:Kręczynka jesienna|Kręczynka jesienna]] (''Spiranthes spiralis'' (L.) Chevall.) ==== <gallery> File:Spiranthes spiralis4.jpg|Kręczynka jesienna. File:Spiranthes spiralis 170808.jpg|Kręczynka jesienna. File:Spiranthes spiralis (habitus).jpg|Kręczynka jesienna. File:Spiranthes spiralis tubers Hompelvoet RF.JPG|Bulwy kręczynki jesiennej. File:Spiranthes spiralis02.jpg|Liście kręczynki jesiennej. File:Скрученник спиральный - Spiranthes spiralis - Autumn Ladies' Tresses - Есенен спиралник - Herbst-Drehwurz (37425859672).jpg|Liście kręczynki jesiennej. File:Spiranthes spiralis Chancy 21 08 2014 24.jpg|Pąki kwiatowe kręczynki jesiennej. File:Spiranthes spiralis sl4.jpg|Kwiatostan kręczynki jesiennej. File:Spiranthes spiralis Chancy 21 08 2014 18.jpg|Kwiatostan kręczynki jesiennej. File:Autumn Lady's-Tresses - Spiranthes spiralis (20843421823).jpg|Kwiatostan kręczynki jesiennej. File:Spiranthes spiralis Chancy 21 08 2014 03.jpg|Kwiaty kręczynki jesiennej. File:Spiranthes spiralis MHNT Fleurs.jpg|Kwiaty kręczynki jesiennej. File:Autumn Lady's-Tresses - Spiranthes spiralis (20846533633).jpg|Kwiaty kręczynki jesiennej. </gallery> {{Atlas flory Polski/Commons|Spiranthes spiralis|Kręczynka jesienna}} {{BrClear}} === Storczyca (''Traunsietnera'') === ==== [[w:Storczyca kulista|Storczyca kulista]] (''Traunsteinera globosa'' (L.) Rchb.) ==== <gallery> File:Traunsteinera globosa T69.1.jpg|Storczyca kulista. File:Traunsteinera globosa sl3.jpg|Storczyca kulista. File:Traunsteinera globosa 250708.jpg|Storczyca kulista. File:Traunsteinera globosa Italien Grödner Joch 842.jpg|Storczyca kulista. File:Traunsteinera globosa T 69.jpg|Kwiatostan storczycy kulistej. File:Traunsteinera globosa (19603796581).jpg|Kwiatostan storczycy kulistej. File:Traunsteinera globosa Col de la Croix 2014 07 05 16.jpg|Kwiatostan storczycy kulistej. File:Rosa Kugelorchis Traunsteinera globosa Grüner Ups Ehrwald-004.jpg|Kwiatostan storczycy kulistej. File:Traunsteinera globosa Italien Grödner Joch 843.jpg|Kwiatostan storczycy kulistej. File:Traunsteinera globosa Videmanette 27 07 2013 04.jpg|Kwiatostan storczycy kulistej od góry. File:Traunsteinera globosa Noirmont 2014 07 07.jpg|Kwiaty storczycy kulistej. File:Traunsteinera globosa Noirmont 2014 07 14.jpg|Kwiaty storczycy kulistej. </gallery> {{Atlas flory Polski/Commons|Traunsteinera globosa|Storczyca kulista}} {{Nawigacja|Atlas flory Polski|[[Atlas flory Polski/Liliowate|Liliowate]]|[[Atlas flory Polski/Kosaćcowate|Kosaćcowate]]}} gu8t23d4hm781d3q5x3ts7xlyb2wb01 Moduł:StronicowyParser/Potrzebne 828 58155 436016 435503 2022-07-30T11:08:51Z Persino 2851 Scribunto text/plain local p={}; --zamykanie local znak_127=mw.ustring.char(127); function p.ZamieniajSzablonyStart(self) self.numer_szablonu=1; end; function p.ZamieniajSzablony(self,szablon1,szablon2,szablon3) local lewy=znak_127.."'\"`UNIQ--tzp-"..self.numer_szablonu.."-QINU`\"'"..znak_127; local prawy=znak_127.."'\"`UNIQ--tzk-"..self.numer_szablonu.."-QINU`\"'"..znak_127; local rownosc=znak_127.."'\"`UNIQ--tr-"..self.numer_szablonu.."-QINU`\"'"..znak_127; local pionowa=znak_127.."'\"`UNIQ--tp-"..self.numer_szablonu.."-QINU`\"'"..znak_127; local szablon2,_= mw.ustring.gsub(szablon2,"{{",lewy); local szablon2,_= mw.ustring.gsub(szablon2,"}}",prawy); local szablon2,_= mw.ustring.gsub(szablon2,"=",rownosc); local szablon2,_= mw.ustring.gsub(szablon2,"|",pionowa); self.numer_szablonu=self.numer_szablonu+1; return szablon1..szablon2..szablon3; end; function p.AnalizaSzablonu(numer_szablonu) local function LewyPrawyRownoscPionowa() local lewy=znak_127.."'\"`UNIQ--tzp-"..numer_szablonu.."-QINU`\"'"..znak_127; local prawy=znak_127.."'\"`UNIQ--tzk-"..numer_szablonu.."-QINU`\"'"..znak_127; local rownosc=znak_127.."'\"`UNIQ--tr-"..numer_szablonu.."-QINU`\"'"..znak_127; local pionowa=znak_127.."'\"`UNIQ--tp-"..numer_szablonu.."-QINU`\"'"..znak_127; local zamykanie={ [lewy]="{{", [prawy]="}}", [rownosc]="=", [pionowa]="|", }; return zamykanie; end; return LewyPrawyRownoscPionowa(); end; function p.OgolnyWzor(numer_szablonu) if(not numer_szablonu)then local wzor=znak_127.."'\"`UNIQ%-%-t%a+%-(%d+)%-QINU`\"'"..znak_127; return wzor; end; local wzor=znak_127.."'\"`UNIQ%-%-t%a+%-"..numer_szablonu.."%-QINU`\"'"..znak_127; return wzor; end; function p.WzorRownosc(numer_szablonu) if(not numer_szablonu)then local wzor=znak_127.."'\"`UNIQ%-%-tr%-(%d+)%-QINU`\"'"..znak_127; return wzor; end; local wzor=znak_127.."'\"`UNIQ%-%-tr%-"..numer_szablonu.."%-QINU`\"'"..znak_127; return wzor; end; function p.WzorPionowa(numer_szablonu) if(not numer_szablonu)then local wzor=znak_127.."'\"`UNIQ%-%-tp%-(%d+)%-QINU`\"'"..znak_127; return wzor; end; local wzor=znak_127.."'\"`UNIQ%-%-tp%-"..numer_szablonu.."%-QINU`\"'"..znak_127; return wzor; end; function p.WzorSzablon(numer_szablonu,ktore) if(not numer_szablonu)then if(not ktore)then local wzor=znak_127.."'\"`UNIQ%-%-tzp%-(%d+)%-QINU`\"'"..znak_127; return wzor; else local wzor=znak_127.."'\"`UNIQ%-%-tzk%-(%d+)%-QINU`\"'"..znak_127; return wzor; end; end; if(not ktore)then local wzor=znak_127.."'\"`UNIQ%-%-tzp%-"..numer_szablonu.."%-QINU`\"'"..znak_127; return wzor; else local wzor=znak_127.."'\"`UNIQ%-%-tzk%-"..numer_szablonu.."%-QINU`\"'"..znak_127; return wzor; end; end; function p.MinMaxSzablon(zmienna) local numer_szablonu=1; local iterator=mw.ustring.gmatch(zmienna,p.WzorSzablon(nil,false)); local __min=nil; local __max=0; for numer_zamykania in iterator do numer_zamykania=tonumber(numer_zamykania) or 0; if(not __min)then __min=numer_zamykania;else __min=math.min(__min,numer_zamykania) end; __max=math.max(numer_zamykania,__max); end; return __min,__max; end; function p.KodujStroneSzablonowa(tekst_artykulu) p:ZamieniajSzablonyStart(); local function ZamieniajSzablony(szablon1,szablon2,szablon3) return p:ZamieniajSzablony(szablon1,szablon2,szablon3); end; while mw.ustring.match(tekst_artykulu,"{{[^{}|]-|.-{{[^{}]-}}[^{}]-}}") do tekst_artykulu=mw.ustring.gsub(tekst_artykulu,"({{[^{}|]-|.-)({{[^{}]-}})([^{}]-}})",ZamieniajSzablony); end; return tekst_artykulu; end; --koniec zamykanie function p.LiczonyHNumer() local ulozenie=nil; local ostatnie=0; local h_numer_zapamietane=nil; return function(h_numer,h_numer_nowe,jakie) if(not h_numer_nowe)then if(not jakie)then if(h_numer==0)then return h_numer_zapamietane; elseif(h_numer<0)then h_numer=math.abs(h_numer); end; else if(h_numer==0)then h_numer_zapamietane=0; return 0; end; end; if((ulozenie==nil)or(ulozenie>=h_numer))then ulozenie=h_numer-1; elseif(ostatnie+1<h_numer-ulozenie)then ulozenie=h_numer-ostatnie-1; end; ostatnie=h_numer-ulozenie; h_numer=h_numer-ulozenie; h_numer_zapamietane=h_numer; return h_numer; else ulozenie=h_numer-h_numer_nowe; ostatnie=h_numer-ulozenie; return h_numer_nowe; end; end; end; function p.PoziomAdresu(adres) local lens=#adres; local i=1; for p=1, lens,1 do local znak=mw.ustring.sub(adres,p,p); if(znak=="/")then i=i+1; end; end; return i; end; function p.NazwaNadStrony(adres,numer) if((numer)and(numer==1))then return nil;end; if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end; local lens=#adres; local i=1; for p=1, lens,1 do local znak=mw.ustring.sub(adres,p,p); if(znak=="/")then i=i+1; end; if(i==numer)then return mw.ustring.sub(adres,1,p-1); end; end; return adres; end; function p.SubNazwaNadStrony(adres,numer,krok) if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end; krok=krok or 1; if((krok<1)or(krok~=math.floor(krok)))then return adres;end; local lens=#adres; local i=1; local a=nil;local b=nil; for p=1, lens,1 do local znak=mw.ustring.sub(adres,p,p); if(znak=="/")then i=i+1; if(i==numer)then if(not a)then a=p+1;end; end; if(i==numer+krok)then if(not b)then b=p-1;break;end; end; end; end; if(not a)then a=1;end; if(not b)then b=lens;end; return mw.ustring.sub(adres,a,b); end; function p.ParametryPudelkaKsiazki(self,frame) local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"]; local nazwa_jednostki=self.args["nazwa jednostki"]; if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then if(nazwa_jednostki)then local html_modul=require("Module:Html"); self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true); self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki); end; local pudelko_modul=require("Module:Pudełko"); local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame); local nazwy_modul=require("Module:Nazwy"); self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki); self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki); else local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych; self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni; self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki; self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu; end; end; function p.TabelaListyArtykulowKsiazki(self,frame) local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych; local nazwa_przestrzeni;local nazwa_ksiazki; if(tabela_listy_danych_analizy_ksiazki.zastepczy)then nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni; nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki; else nazwa_przestrzeni=self.nazwa_przestrzeni; nazwa_ksiazki=self.nazwa_ksiazki; end; local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni]; if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end; local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki]; if(not tab_lista_artykulow_w_ksiazce)then return nil;end; return tab_lista_artykulow_w_ksiazce.spis; end; function p.AnalizujArgumentySzablonu(self,frame) local parametry_modul=require("Module:Parametry"); self.args=frame and ((frame.getParent and ((parametry_modul.CzyTak(frame.args["wyspecjalizowana"]))and frame or frame:getParent()) or frame).args or frame) or {}; end; function p.Args(self) return self.args; end; function p.PelnaNazwaKsiazki(self,frame) return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki end; function p.NazwaArtykuluKsiazki(self,frame) return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or ""); end; function p.ObliczeniaInformacje(self,frame) p:AnalizujArgumentySzablonu(frame); p:ParametryPudelkaKsiazki(frame); local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame); if(not tab_lista_artykulow_w_ksiazce)then return nil;end; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.CzyTak(self.args["nagłówek"]); local tab_artykul_bez_naglowka=(not naglowek) and {} or nil; self.tab_artykul={}; local html_modul=require("Module:Html"); for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do if(tab_lista[2])then for _,artykul_w_bazie in ipairs(tab_lista[2])do local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]); if(naglowek or not tab_artykul_bez_naglowka[artykul])then if(not naglowek)then tab_artykul_bez_naglowka[artykul]=true; end; table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul); end; end; end; end; self.len_tab_artykul=#self.tab_artykul; return true; end; function p.PomiedzyArtykul(self,frame) self.numer=tonumber(frame.args[1]) or 1; self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1; return self.tab_artykul[self.reszta+1]; end; function p.LosowyArtykul(self,frame) self.numer=tonumber(frame.args[1]) or 1; self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1; return self.tab_artykul[self.reszta]; end; function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty) if(lista_elementow_spisu_tresci==nil)then return nil;end; local twor_listy=""; local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2]; local poziom=1; local num={}; for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do if(licznik==1)then num[#num+1]=1; twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]"; else if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then num[#num]=num[#num]+1; twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]"; elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then num[#num+1]=1; poziom=poziom+1; twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]"; liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2]; elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then local num_length=#num; for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do table.remove(num); end; num[#num]=num[#num]+1; local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2]; poziom=poziom-roznica_poziomow; twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">' .."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]"; liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2]; end; end; end; twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci); return twor_listy; end; function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij) local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci); local parametry_modul=require("Module:Parametry"); local frame=frame or mw.getCurrentFrame(); local args=frame.args; local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]); if(not toc_czy_tocramka)then local czy_ukryte=twor_listy; local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu"; local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px"; local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%"; local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści"; local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]); local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]); local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]); local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]); twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>"; local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:1px;' or "")..'display:'..(czy_ukryte and "table" or "none")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}'; local rozwiniety_wikikod=frame:preprocess(wikikod_menu); return rozwiniety_wikikod; else return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or ""); end; end; function p.AnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,__Funkcja, __Funkcja2) uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+",""); local tab_wywolania={}; local function GlownaFunkcja(wywolanie,oznaczenie_szablonu) local techniczne_modul=require("Module:Techniczne"); local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie); if(not tabela_parametrow_szablonu)then return nil;end; __Funkcja(tabela_parametrow_szablonu,wywolanie); if(__Funkcja2)then __Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu); end; for parametrs,wartosc in pairs(tabela_parametrow_szablonu) do local __min,__max=p.MinMaxSzablon(wartosc); if((__min~=nil)and(__max~=0)and(__max>=__min))then for ss=__max,__min,-1 do local parametr2,ile=mw.ustring.gsub(wartosc,p.OgolnyWzor(ss),p.AnalizaSzablonu(ss)); if((ile)and((tonumber(ile) or 0)>0))then local iterator2=mw.ustring.gmatch(parametr2,"{{[^{}]+}}"); for wywolanie in iterator2 do if(not tab_wywolania[ss])then GlownaFunkcja(wywolanie,ss); end; end; if(not tab_wywolania[ss])then tab_wywolania[ss]=true; end; end; end; end; end; end; GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu); end; function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA) local pozycja_artykulu=nil;local nazwa=nil; local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$") if(not((pozycja_artykulu)and(nazwa)))then pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$"); end; local function Artykul(strona) local nazwy_modul=require("Module:Nazwy"); local html_modul=require("Module:Html"); local parametry=html_modul["ParametryStronyAdresu"](strona); local naglowek=html_modul["NagłówekStronyAdresu"](strona); local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona); local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona); local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona); if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or ""); else return; end; end; local id=nil; local parametry; if(not pozycja_artykulu)then local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})"); if(link_szablon)then local techniczne_modul=require("Module:Techniczne"); parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon); local szablon=parametry[0]; if(szablon=="SpisTreści")then pozycja_artykulu=parametry[1]; id=true; elseif(szablon=="Sekcja referencyjna")then local podstrona=parametry[3] or parametry["podstrona"]; local strona=parametry[1] or parametry["strona"]; if(not strona)then local nazwy_modul=require("Module:Nazwy"); pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](); else pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona; end; nazwa=parametry["nazwa"] or parametry[2]; else if(szablon=="Link wewnętrzny")then local strona=parametry["strona"]; nazwa=parametry["nazwa"]; pozycja_artykulu=Artykul(strona); elseif(szablon=="LinkOgólne")then local strona=parametry[1]; nazwa=parametry[2]; local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"]; if(miano_przestrzeni_nazw)then pozycja_artykulu=Artykul(((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1]); else pozycja_artykulu=Artykul(parametry[1]) end; elseif(szablon=="LinkGłówna")then pozycja_artykulu=Artykul(parametry[1]) nazwa=parametry[2]; elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); pozycja_artykulu=Artykul(nazwy_np_modul.Wikijunior..":"..parametry[1]); nazwa=parametry[2]; elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); pozycja_artykulu=Artykul(nazwy_np_modul.Wikibooks..":"..parametry[1]); nazwa=parametry[2]; elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); pozycja_artykulu=Artykul(nazwy_np_modul.User..":"..parametry[1]); nazwa=parametry[2]; elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then return nil,nil,parametry,false,true; end; end; end; else local parametry_modul=require("Module:Parametry"); pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",}); local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$"); if(czy_pozycja_artykulu)then if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then pozycja_artykulu=czy_pozycja_artykulu; else pozycja_artykulu=nil; end; else pozycja_artykulu=Artykul(pozycja_artykulu); end; end; return pozycja_artykulu,nazwa,parametry,id,false; end; function p.NumerObiektu(frame, nazwa_obiektu) local pf=frame:getParent(); local parametry_modul=require("Module:Parametry"); local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil; local nazwa_strony; local html_modul=require("Module:Html"); local nazwy_modul=require("Module:Nazwy"); local ksiazkowe_modul=require("Module:Książkowe"); local techniczne_modul=require("Module:Techniczne"); local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu; nazwa_artykulu=frame.args["nazwa artykułu"]; nazwa_ksiazki=frame.args["nazwa książki"]; local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych; if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"); end; local czy_aktualna_strona=nil; if((not nazwa_artykulu)and(not nazwa_ksiazki))then czy_aktualna_strona=1; nazwa_strony=""; elseif((nazwa_artykulu)and(not nazwa_ksiazki))then czy_aktualna_strona=2; nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni; nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki; nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu); nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," "); nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""); else nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki); nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki); nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki); nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu); nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," "); nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""); end; local link = function(adres_linku,nazwa_linku,klasa,styl) local czy_klasa=parametry_modul.CzyTak(klasa); local czy_styl=parametry_modul.CzyTak(styl); if(czy_klasa or czy_styl)then spanramka=mw.html.create('span'); if(czy_klasa)then spanramka:attr("class",klasa);end; if(czy_styl)then spanramka:attr('style',styl);end; spanramka:wikitext(nazwa_linku); local kod_html=spanramka:allDone(); return "[["..adres_linku.."|"..tostring(kod_html).."]]"; else return "[["..adres_linku.."|"..nazwa_linku.."]]"; end; end; local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu) divramka=mw.html.create('div'); local parametry_modul=require("Module:Parametry"); local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji); if(parametry_modul.CzyTak(uchwyt))then if(parametry_modul.CzyTak(bez_automatu))then divramka:attr('id',"wzór_"..uchwyt); else if(numeracja)then divramka:attr('id',"wzór_"..numeracja); else divramka:attr('id',"wzór_"..uchwyt); end; end; end; if(parametry_modul.CzyTak(styl_main))then divramka:attr('style',styl_main); end; local uchwyt_fun=function() if(parametry_modul.CzyTak(uchwyt))then local divuchwytramka=mw.html.create('div'); divuchwytramka:attr('class',klasa_numeracji); divuchwytramka:attr('style',styl_numeracji); if(parametry_modul.CzyTak(bez_automatu))then divuchwytramka:wikitext('(',uchwyt..")"); else if(numeracja)then divuchwytramka:wikitext('('..numeracja..")"); else divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")"); end; end; divramka:node(divuchwytramka); end; end; local pole_odstepu_fun=function() divramka:addClass("wzory"); local divramka2=mw.html.create('div'); divramka2:attr('style',styl_odstepu); divramka2:wikitext(pole_odstepu); divramka:node(divramka2); end; local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu) if(parametry_modul.CzyTak(opis))then local divramka5=mw.html.create('div') divramka5:attr('class',klasa_opisu) divramka5:attr('style',styl_opisu) divramka5:wikitext(wzor_opisu) divramka:node(divramka5) else local divramka5=mw.html.create('div'); divramka5:attr('style',styl_alternatywy_opisu); divramka:node(divramka5) end; end; if(not czy_pozycja_numeracji_prawa)then uchwyt_fun(); else pole_odstepu_fun(); end; opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2); local divramka4=mw.html.create('div'); divramka4:attr('class',klasa_wzoru); divramka4:attr('style',styl_wzoru); divramka4:wikitext(wzor); divramka:node(divramka4); opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu); if(czy_pozycja_numeracji_prawa)then uchwyt_fun(); else pole_odstepu_fun(); end; return tostring(divramka:allDone()); end; local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu) local divramka=mw.html.create('div'); divramka:attr('class',klasa); divramka:attr('style',styl); local czy_uchwyt=parametry_modul.CzyTak(uchwyt); if(czy_uchwyt)then if(numeracja)then if(parametry_modul.CzyTak(bez_automatu))then divramka:attr('id',"rysunek_"..uchwyt); else divramka:attr('id',"rysunek_"..numeracja); end; else divramka:attr('id',"rysunek_"..uchwyt); end; end; local czy_opis=parametry_modul.CzyTak(opis); local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]"; divramka:wikitext(wywolanie_rysunku); return tostring(divramka:allDone()); end; local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu) local divramka=mw.html.create('div'); if(parametry_modul.CzyTak(uchwyt))then if(parametry_modul.CzyTak(bez_automatu))then divramka:attr('id',przedrostek.."_"..uchwyt); else divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt)); end; end; divramka:attr('class',klasa); divramka:attr('style',styl); local wikitext=""; if(parametry_modul.CzyTak(uchwyt))then if(parametry_modul.CzyTak(bez_automatu))then wikitext="("..przedrostek2.." "..uchwyt..")"; else if(numeracja)then wikitext="("..przedrostek2.." "..numeracja..")"; else wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")"; end; end; end; if(parametry_modul.CzyTak(styl_naglowka))then local spanramka=mw.html.create('span'); spanramka:attr('style',styl_naglowka); spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext); divramka:node(spanramka); else divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext); end; divramka:wikitext('<BR>'); if(parametry_modul.CzyTak(styl_tekstu))then local spanramka=mw.html.create('span'); spanramka:attr('style',styl_tekstu); spanramka:wikitext(tekst); divramka:node(spanramka); else divramka:wikitext(tekst); end; return tostring(divramka:allDone()); end; local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu) local spanramka=mw.html.create('sup'); spanramka:attr('style',klasa); if(parametry_modul.CzyTak(uchwyt))then if(parametry_modul.CzyTak(bez_automatu))then spanramka:attr('id',przedrostek_id.."_"..uchwyt); else if(parametry_modul.CzyTak(numeracja))then spanramka:attr('id',przedrostek_id.."_"..numeracja); else spanramka:attr('id',przedrostek_id.."_"..uchwyt); end; end; end; spanramka:attr('style',styl); local smallramka=mw.html.create('small'); if(parametry_modul.CzyTak(uchwyt))then if(parametry_modul.CzyTak(bez_automatu))then smallramka:wikitext(prefiks..": "..uchwyt); else if(parametry_modul.CzyTak(numeracja))then smallramka:wikitext('['..prefiks..": "..numeracja..']'); else smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']'); end; end; else smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]"); end; spanramka:node(smallramka); return tostring(spanramka:allDone()); end; local nazwa_strony_fun=function(nazwa_strony) if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni) and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki) and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then return ""; end; return nazwa_strony; end; if(parametry_modul.CzyTak(frame.args["bez automatu"]))then if(frame.args["obiekt"])then if(frame.args["obiekt"]=="link")then local nazwa_strony=nazwa_strony_fun(nazwa_strony); if(uchwyt_obiektu)then return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")"; else return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")"; end; elseif(frame.args["obiekt"]=="wzór")then return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="rysunek")then return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="wypowiedzenie")then return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="punkt")then return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]); else return uchwyt_obiektu; end; else return uchwyt_obiektu; end; end; local tabela_listy_uchwytow_i_numeracji_na_stronie; if(czy_aktualna_strona==nil)then local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu; if(dane_analizy_artykulu)then local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni]; if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki]; if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow; if(lista_artykolow)then local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu] if(tabela_listy_analizy_na_stronie)then tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje; end; end; end; end; end; elseif(czy_aktualna_strona==1)then tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu; if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"); end; elseif(czy_aktualna_strona==2)then tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki; if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"); end; if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow; if(lista_artykolow)then local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu] if(tabela_listy_analizy_na_stronie)then tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje; end; end; end; end; if(tabela_listy_uchwytow_i_numeracji_na_stronie)then local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu]; if(spis_uchwytow)then if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then for _, dany_artykul in ipairs(spis_uchwytow)do if(dany_artykul[1]==uchwyt_obiektu)then if(nazwa_obiektu~="Śródtytuł")then if(frame.args["obiekt"])then if(frame.args["obiekt"]=="link")then local nazwa_strony=nazwa_strony_fun(nazwa_strony); if(not dany_artykul[2])then return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")"; end; return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")"; elseif(frame.args["obiekt"]=="wzór")then return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="rysunek")then return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="wypowiedzenie")then return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="punkt")then return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]); else return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu")); end; else return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu")); end; else if(dany_artykul[2])then local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle()); if(tytul_szablonu=="LinkŚródtytuł")then return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"]) elseif(tytul_szablonu=="LinkŚródtytułTutaj")then return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"]) end; end; end; end; end; end; end; end; if(frame.args["obiekt"])then if(frame.args["obiekt"]=="link")then local nazwa_strony=nazwa_strony_fun(nazwa_strony); return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")"; elseif(frame.args["obiekt"]=="wzór")then return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="rysunek")then return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="wypowiedzenie")then return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]); elseif(frame.args["obiekt"]=="punkt")then return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]); else return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"); end; else return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"); end; end; return p; jfe7zgvipnutu8wl1v1rj4velqa409j Szablon:StronaStart/stronastart.css 10 58549 435959 435824 2022-07-29T22:55:48Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 1s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 3s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 3e30nzmdassq8wgqdvxtdsih1ne1d87 435964 435959 2022-07-30T08:02:21Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height, font-size, line-height 500ms ease-out; transition-property: transform, max-width, width, max-height, height, font-size, line-height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 1s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height, font-size, line-height 500ms ease-out; transition-property: transform, max-width, width, max-height, height, font-size, line-height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height, height, font-size, line-height 500ms ease-out; transition-property: transform, max-width, width, max-height, height, height, font-size, line-height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height, height, font-size, line-height 500ms ease-out; transition-property: transform, max-width, width, max-height, height, height, font-size, line-height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 3s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } oboka1uejp0u6glh65l59l9rqa2xzaq 435965 435964 2022-07-30T08:04:28Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 1s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 3s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 3e30nzmdassq8wgqdvxtdsih1ne1d87 436013 435965 2022-07-30T10:47:01Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 3s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 3s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } tkl50yikd7lzr93rm8kgqv2zlfa4k4i 436014 436013 2022-07-30T10:50:50Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 0op1n8l6247bzjk4gyqsvo8nd3lbks9 436017 436014 2022-07-30T11:20:54Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: all 500ms ease-out; transition-property: all; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: all 500ms ease-out; transition-property: all; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: all 500ms ease-out; transition-property: all; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: all 500ms ease-out; transition-property: all; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 5sqc1gokkco9dbj82lh7xdy46thfzx7 436018 436017 2022-07-30T11:23:59Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: linear; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: linear; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 6snjqdklcqqqxc988toyrzj6kt2f7rq 436019 436018 2022-07-30T11:25:30Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 0op1n8l6247bzjk4gyqsvo8nd3lbks9 436020 436019 2022-07-30T11:29:10Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } juuxtm0epy1m9b7ql2nstl1de8uqft9 436021 436020 2022-07-30T11:38:06Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 7rvcieep1gro53qqdr8hmau7ujeniki 436022 436021 2022-07-30T11:39:29Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: max-width, width, max-height, height 500ms ease-out, linear; transition-property: max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: max-width, width, max-height, height 500ms ease-out, linear; transition-property: max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 6qqkcbp8j6uac0f75kgl3kylusds4ug 436023 436022 2022-07-30T11:40:31Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:5s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 5s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } juuxtm0epy1m9b7ql2nstl1de8uqft9 436024 436023 2022-07-30T11:41:46Z Persino 2851 sanitized-css text/css .strona_prawa .spis{ display:flex; width:100%; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{ width:calc( 100% - 8px ); margin:0 4px; } .strona_prawa .spis > div:not(.pierwsza_strona){ height:auto; max-height:100%; width:auto; display:flex !important; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{ height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ display:flex !important; flex-direction:column; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td, .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis{ display:flex !important; height:100%; width:100%; box-sizing:border-box; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{ padding:0 3px; } .strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-y{ height:calc( 100% - 20px ); max-height:100% !important; } .strona_prawa .mw-sticky-y.spis.mw-scrollbar-overflow-x:not(:hover){ overflow-x:auto; overflow-y:hidden; } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); /**/ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:3s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:700px !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:10px; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:5px; margin-bottom:5px; } .strona_start{ background-color:white; } .strona_start .główna_strona.tło{ background-color:white; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png'); } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ max-width:none !important; transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(117%,-117%); } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-117%,-117%); } .strona_prawa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x:not(:hover), .strona_lewa .mw-optimal-x:not(:hover){ transition: transform, max-width, width, max-height, height 500ms ease-out, linear; transition-property: transform, max-width, width, max-height, height; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 3s; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{ margin-top:0.6em; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type, .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{ margin-top:0; } .strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > p:last-of-type{ margin-bottom:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona.mw-scrollbar-overflow-x{ padding-bottom:5px; } .strona.mw-scrollbar-overflow-y{ padding-right:5px; } 2kild7kowhpl0rvoeucyzphbgm04uby Wikipedysta:Persino/common.js 2 58552 435855 435853 2022-07-29T12:06:13Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); if(element_g.style[top+"Old"]===undefined){ element_g.style[top+"Old"]=parseFloat(comp.getPropertyValue(top)); element_g.style[top+"Old"]=((!isNaN(element_g.style[top+"Old"]))?element_g.style[top+"Old"]:0); } if(!element_g.style[bottom+"Old"]===undefined){ element_g.style[bottom+"Old"]=parseFloat(comp.getPropertyValue(bottom)); element_g.style[bottom+"Old"]=((!isNaN(element_g.style[bottom+"Old"]))?element_g.style[bottom+"Old"]:0); } var topold=element_g.style[top+"Old"]+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); if(dlugosc>=0){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); if(dlugosc>=0){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); potoet01idwennsfb3xo3veelwjmg8w 435856 435855 2022-07-29T12:16:53Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); if(element_g.style[top+"Old"]===undefined){ element_g.style[top+"Old"]=parseFloat(comp.getPropertyValue(top)); element_g.style[top+"Old"]=((!isNaN(element_g.style[top+"Old"]))?element_g.style[top+"Old"]:0); } if(!element_g.style[bottom+"Old"]===undefined){ element_g.style[bottom+"Old"]=parseFloat(comp.getPropertyValue(bottom)); element_g.style[bottom+"Old"]=((!isNaN(element_g.style[bottom+"Old"]))?element_g.style[bottom+"Old"]:0); } var topold=element_g.style[top+"Old"]+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); p2z6qxvq1j5hlwjnfnpqx96m87h4hrp 435870 435856 2022-07-29T15:04:20Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); if(element_g.style[top+"Old"]===undefined){ element_g.style[top+"Old"]=parseFloat(comp.getPropertyValue(top)); element_g.style[top+"Old"]=((!isNaN(element_g.style[top+"Old"]))?element_g.style[top+"Old"]:0); } if(!element_g.style[bottom+"Old"]===undefined){ element_g.style[bottom+"Old"]=parseFloat(comp.getPropertyValue(bottom)); element_g.style[bottom+"Old"]=((!isNaN(element_g.style[bottom+"Old"]))?element_g.style[bottom+"Old"]:0); } var topold=element_g.style[top+"Old"]+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("margin-"+left_box);var margin_right=$(element_g).data("margin-"+right_box); if(!margin_left){ $(element_g).data("margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("margin-"+left_box))+parseFloat($(element_g).data("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); 6qree9rruvjbvwgbkm28nbefvol3chy 435871 435870 2022-07-29T15:06:56Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); if(element_g.style[top+"Old"]===undefined){ element_g.style[top+"Old"]=parseFloat(comp.getPropertyValue(top)); element_g.style[top+"Old"]=((!isNaN(element_g.style[top+"Old"]))?element_g.style[top+"Old"]:0); } if(!element_g.style[bottom+"Old"]===undefined){ element_g.style[bottom+"Old"]=parseFloat(comp.getPropertyValue(bottom)); element_g.style[bottom+"Old"]=((!isNaN(element_g.style[bottom+"Old"]))?element_g.style[bottom+"Old"]:0); } var topold=element_g.style[top+"Old"]+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("margin-"+left_box);var margin_right=$(element_g).data("margin-"+right_box); if(!margin_left){ $(element_g).data("margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("margin-"+left_box))+parseFloat($(element_g).data("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("margin-"+left);var margin_right=$(element_g).data("margin-"+right); if(!margin_left){ $(element_g).data("margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("margin-"+left))+parseFloat($(element_g).data("margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); quhxl40qw4c6tvczz9zimdkhr59sol5 435872 435871 2022-07-29T15:14:45Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); if(element_g.style[top+"Old"]===undefined){ element_g.style[top+"Old"]=parseFloat(comp.getPropertyValue(top)); element_g.style[top+"Old"]=((!isNaN(element_g.style[top+"Old"]))?element_g.style[top+"Old"]:0); } if(!element_g.style[bottom+"Old"]===undefined){ element_g.style[bottom+"Old"]=parseFloat(comp.getPropertyValue(bottom)); element_g.style[bottom+"Old"]=((!isNaN(element_g.style[bottom+"Old"]))?element_g.style[bottom+"Old"]:0); } var topold=element_g.style[top+"Old"]+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(!margin_left){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?(element_g.style[bottom+"Old"]):(Math.max(0,element_g.style[bottom+"Old"]-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(!margin_left){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); o9gz1b0bgvfo77hzv6fciwue6iuw0kq 435873 435872 2022-07-29T15:26:27Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYTopOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYTopOld-bottom'); if(!stickyXYTopOld){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYTopOld-top',((!isNaN(topold_war))?topold_war:0)); } if(!stickyXYBottomOld){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYTopOld-bottom',((!isNaN(topold_war))?topold_war:0)); } var topold=$(element_g).data('sctickyXYTopOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(!margin_left){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(!margin_left){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(!margin_right){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); 21bfbfflg2gi7z624ho8birqqrwni05 435874 435873 2022-07-29T15:35:30Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYTopOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYTopOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYTopOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYTopOld-bottom',((!isNaN(topold_war))?topold_war:0)); } var topold=$(element_g).data('sctickyXYTopOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); 5dbr49af839r11dk0mqtesb2k738ntd 435875 435874 2022-07-29T15:36:56Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYTopOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYTopOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYTopOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYTopOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYTopOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYTopOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYTopOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); pvtsuioojjmoeq6tgo98r0875htszza 435876 435875 2022-07-29T15:41:14Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); alert(stickyXYTopOld) if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); 0hcuyljmb3ve19hp8ewz4t4qzkzu0l9 435877 435876 2022-07-29T15:41:57Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); 95dcdsdwu1t60xwvspkf80rpb7g5dzf 435878 435877 2022-07-29T15:43:39Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } alert($(element_g).data('sctickyXYOld-top')); var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); qh2l7l2s2gncb7loj7ofj0wqn70l9rs 435879 435878 2022-07-29T15:44:15Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); 95dcdsdwu1t60xwvspkf80rpb7g5dzf 435880 435879 2022-07-29T15:45:19Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } alert($(element_g).data('sctickyXYOld-top')); var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); qh2l7l2s2gncb7loj7ofj0wqn70l9rs 435881 435880 2022-07-29T15:48:55Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); alert(topold_war); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } alert($(element_g).data('sctickyXYOld-top')); var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); dfujrsd76icne8kiefptchyewn5jyvc 435882 435881 2022-07-29T15:53:36Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); alert(window.getComputedStyle(element_g, null).getPropertyValue(top)); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); ivkdxv8yi9bk7p0lplo34xuj8uvnpqn 435883 435882 2022-07-29T15:55:56Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); q4d6ao80fz1zucm4yuzf8q26k88khfq 435884 435883 2022-07-29T15:58:49Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); console.log(comp.getPropertyValue(top),"TYTAN"); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; element.style.top="0"; element.style.marginTop="0"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; element.style.top="0"; element.style.marginTop="0"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); l7okce41vo7d1l2bdahbtu47ld2pr0h 435885 435884 2022-07-29T16:01:22Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } //$(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); console.log(comp.getPropertyValue(top),"TYTAN"); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } //$(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } //$(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } $(StronaStart); o4trw8zrks6onog919mmzptvpzbi3uc 435886 435885 2022-07-29T16:06:26Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); console.log(comp.getPropertyValue(top),"TYTAN"); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=rect_rodzic[bottom]-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 6pc8xfksp76l2r2ybwbqr6nksl57yv1 435887 435886 2022-07-29T16:26:57Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=(wys-rect_rodzic[bottom])-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if((przodek_height)&&(wysokosc>=przodek_height)){ element_g.style[bottom]="auto"; element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); lq35pewsrtr5bereeu8w17iwxddhszp 435888 435887 2022-07-29T16:28:05Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=(wys-rect_rodzic[bottom])-marginbottom; var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //if((przodek_height)&&(wysokosc>=przodek_height)){ // element_g.style[bottom]="auto"; // element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; //}else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; //} element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); s7dkkvz5efmixmapdgkpzumo0jll59u 435889 435888 2022-07-29T16:32:11Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=(wys-rect_rodzic[bottom])-marginbottom; alert(rect_rodzic[bottom]) var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //if((przodek_height)&&(wysokosc>=przodek_height)){ // element_g.style[bottom]="auto"; // element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; //}else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; //} element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); cl376l2215x29ac8x5beyo9ttsj3int 435890 435889 2022-07-29T16:42:37Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if((przodek_height)&&(wysokosc>=przodek_height)){ element_g.style[bottom]="auto"; element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 0c9f6bexcbdwpyrjgbwm20o3lm80u8e 435891 435890 2022-07-29T16:45:52Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); console.log(bottom_ab,"TYTAN"); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if((przodek_height)&&(wysokosc>=przodek_height)){ element_g.style[bottom]="auto"; element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ajst3dfbebwnog70uxnxj73bvixtyva 435892 435891 2022-07-29T16:48:46Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); console.log(bottom_ab,"TYTAN"); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(!przodek_height){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if((przodek_height)&&(wysokosc>=przodek_height)){ element_g.style[top]="auto"; element_g.style[bottom]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 7lcxsswp65d5kmmjn1aztjc62s7cohd 435893 435892 2022-07-29T16:50:39Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); console.log(bottom_ab,"TYTAN"); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if(wysokosc>=przodek_height){ element_g.style[top]="auto"; element_g.style[bottom]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom))+"px"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 64mrdwjzmwuaqte07wr8o1jqwrtdzco 435894 435893 2022-07-29T16:53:39Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); console.log(bottom_ab,"TYTAN"); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if(wysokosc>=przodek_height){ element_g.style[top]="auto"; element_g.style[bottom]=(parseFloat(przodek_height/*-$(element_g).data('sctickyXYOld-bottom')-rect_dziecko[height]-marginbottom*/))+"px"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ei2dhx6oas7joro86w1q560uecuzepu 435895 435894 2022-07-29T16:59:01Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); console.log(bottom_ab,"TYTAN"); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); m4eeoqwmmxpu16auiey2z0bwyplmio4 435896 435895 2022-07-29T17:02:32Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); console.log(bottom_ab,"TYTAN"); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; console.log((wysokosc>=przodek_height),wysokosc,przodek_height); if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); onffyj9l7qoht5kj8rxpbgqvix4d6sl 435897 435896 2022-07-29T17:06:19Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ //comp_rodz=window.getComputedStyle(element,null); //height_rodzic=comp_rodz.getPropertyValue([height]); //if(height_rodzic>=height_obj){ // przodek_height=height_rodzic; // width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; // rodzic_element=element; //} }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 23jp4l7k81m5bbfudfmo2g39zzr5rsz 435898 435897 2022-07-29T17:10:23Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); m1fufgp4tzcooveudlpkv39t9i1tr36 435899 435898 2022-07-29T17:12:57Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); console.log(wysokosc,przodek_height) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); mlip829lh8irb9a1rdnq92e0lp3v4ms 435900 435899 2022-07-29T17:16:00Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); console.log(wysokosc,przodek_height,bottom_ab) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); pnszd47oo69f5n2jxq3cc2k999hn8oz 435901 435900 2022-07-29T17:22:07Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); console.log(wysokosc,przodek_height,bottom_ab,$(element_g).data('sctickyXYOld-bottom')) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 5qp4ejdbabhwg52omeozjqivsx4s2y4 435902 435901 2022-07-29T17:27:02Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); console.log(comp.getPropertyValue(bottom),"TYTAN"); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); //console.log(wysokosc,przodek_height,bottom_ab,$(element_g).data('sctickyXYOld-bottom')) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); tg7mwz79d7a6xlcajsr7dlntbcfcikp 435903 435902 2022-07-29T17:31:07Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); //console.log(wysokosc,przodek_height,bottom_ab,$(element_g).data('sctickyXYOld-bottom')) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); njsg8j05olzy26clftnavfmutgr4zwy 435904 435903 2022-07-29T17:34:39Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ly1q2fk3qo2bbdaggtdrojclgm8rldd 435905 435904 2022-07-29T17:37:11Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); cmlry774b0ynd4rvpgzm0gqepscpujl 435906 435905 2022-07-29T17:45:00Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var str_node_rodzic=$(element_g).parents('.mw-parent-node').first(); if((str_node_rodzic==null)||(str_node_rodzic.length==0)){return;} var rect_rodzic; str_node_rodzic.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; str_node_rodzic.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); //console.log(wysokosc,przodek_height,bottom_ab,$(element_g).data('sctickyXYOld-bottom')) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 7w55nh73mj5oqbtnclevsi37eo4w3t3 435907 435906 2022-07-29T17:46:30Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var str_node_rodzic=$(element_g).parents('.mw-parent-node').first(); console.log(str_node_rodzic); if((str_node_rodzic==null)||(str_node_rodzic.length==0)){return;} var rect_rodzic; str_node_rodzic.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; str_node_rodzic.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); //console.log(wysokosc,przodek_height,bottom_ab,$(element_g).data('sctickyXYOld-bottom')) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 7h4br8mb581yrx38xfrasw3mp4wr299 435908 435907 2022-07-29T17:48:13Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(comp.getPropertyValue(top)); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(comp.getPropertyValue(bottom)); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var str_node_rodzic=$(element_g).parents('.mw-parent-node').first(); if((str_node_rodzic==null)||(str_node_rodzic.length==0)){return;} console.log(str_node_rodzic,"MAMUT"); var rect_rodzic; str_node_rodzic.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; str_node_rodzic.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); var wysokosc=top_obj+margintop+rect_dziecko[height]+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; //console.log(top_obj,margintop,rect_dziecko[height],((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab))),marginbottom); //console.log(wysokosc,przodek_height,bottom_ab,$(element_g).data('sctickyXYOld-bottom')) if(wysokosc>=przodek_height){ element_g.style[top]=(parseFloat(przodek_height-$(element_g).data('sctickyXYOld-bottom')-marginbottom-rect_dziecko[height]-margintop))+"px"; element_g.style[bottom]="auto"; }else{ element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; } element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((wys-rect_rodzic[bottom]>=0)?(wys-rect_rodzic[bottom]):(0))-( (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(wys-rect_rodzic[bottom]<=0))?(5): (((rect_rodzic[top]<=0)&&(wys-rect_rodzic[bottom]>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 5dcbagoe05jd3qijx7awl32emx24uza 435909 435908 2022-07-29T17:49:47Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); cmlry774b0ynd4rvpgzm0gqepscpujl 435910 435909 2022-07-29T17:50:24Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); auyavsslyxa297umaneiu0wvsiec0x4 435911 435910 2022-07-29T17:51:05Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); cmlry774b0ynd4rvpgzm0gqepscpujl 435912 435911 2022-07-29T17:52:56Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); console.log(przodek_height,"TYTAN"); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); p427xrtm29a6f04uyd7fvjpriw5y38x 435913 435912 2022-07-29T17:53:54Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); console.log(przodek_height,"TYTAN",$(element_g).parents('.mw-parent-node').first()); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); e190ac61e1u7mm1yw4sphj5py04lnnm 435914 435913 2022-07-29T17:56:34Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); console.log(height_rodzic,height_obj,"TYTAN1"); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); console.log(przodek_height,"TYTAN",$(element_g).parents('.mw-parent-node').first()); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 75kk5qaasgrf627dkpw68tap01nmmvr 435915 435914 2022-07-29T17:58:00Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; console.log(height_rodzic,height_obj,"TYTAN") } }); console.log(przodek_height,"TYTAN",$(element_g).parents('.mw-parent-node').first()); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ldjooa2sfr3kbnhvg4vmogarqaed1ik 435916 435915 2022-07-29T17:58:55Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=comp_rodz.getPropertyValue([height]); console.log(height_rodzic,height_obj,"TYTAN1") if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; console.log(height_rodzic,height_obj,"TYTAN2") } }); console.log(przodek_height,"TYTAN",$(element_g).parents('.mw-parent-node').first()); if(!przodek_height){ for(var rodzic=element_g.parentNode;((rodzic!=null)&&(rodzic!=document));rodzic=rodzic.parentNode){ comp_rodz=window.getComputedStyle(rodzic, null); var height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=rodzic; break; } } } if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); acrpom5sntf197lem8sz37x53vlagxy 435917 435916 2022-07-29T18:00:12Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var rect_rodzic=element_g.parentNode.getBoundingClientRect(); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); hmytbnnrj9rszh4q6zkigrkh91bq8y2 435918 435917 2022-07-29T18:03:29Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); nnfmcn2nbin68aqep6m76ncckcl24jz 435919 435918 2022-07-29T18:07:46Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))-((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))-marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(!width_rodzic){ $(element_g).parent().first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); } if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); nzgkyz2xsg0c80k36ofj3jnm2nfg7ue 435920 435919 2022-07-29T18:19:40Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin-"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin-"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))-((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))-marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin-"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin-"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); gqm5hzqz08xlpfuqkd84cwk9e8fb2ul 435921 435920 2022-07-29T18:24:29Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))-((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))-marginbottom)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ayscv1brvoh0ttc7wp41bdupugqs1hk 435922 435921 2022-07-29T18:47:18Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) )) )*(height_box_real/rect_dziecko[height])+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ftztq5rac8grfrc9w0n8eow1qoky5n0 435923 435922 2022-07-29T18:52:36Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]>=0)&&(bottom_ab>=0))?0:5) ))*(height_box_real/rect_dziecko[height])+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); nqj2ijyzmmq47q59zn0sw5ngazavdnu 435924 435923 2022-07-29T18:55:46Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys))/*-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]>=0)&&(bottom_ab>=0))?0:5) )*/)*(height_box_real/rect_dziecko[height])+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); bqe49gzmsoo9u1tqn68b3p19xslory8 435925 435924 2022-07-29T18:57:24Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((Math.min(przodek_height,wys))/*-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]>=0)&&(bottom_ab>=0))?0:5) )*/)*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 7t9h5pz95y0ujiwzu1cx5xiym8eavoo 435926 435925 2022-07-29T19:00:45Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((Math.min(przodek_height,wys))+"px"))/*-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]>=0)&&(bottom_ab>=0))?0:5) ))*(height_box_real/rect_dziecko[height]))+"px"*/; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 75f79rjbco7y7ys0x5co6h4spcn8quh 435927 435926 2022-07-29T19:05:46Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); rfz2nviw2455x2dhzskvipqj4yni2hj 435928 435927 2022-07-29T19:12:07Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); /*element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px";*/ element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) )))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); g9pzih8zjdbaisj377ibvbenp49i4lw 435929 435928 2022-07-29T19:14:04Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 2s5258hccewu24akbwk7uyssm9s24n5 435930 435929 2022-07-29T19:21:07Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); /*element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px";*/ element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 2cr782rwdo6yyc60qx7b8ksid3ckk4k 435931 435930 2022-07-29T19:27:22Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 3sshbo3e8ijsd3g2552g6h75wv6vyun 435932 435931 2022-07-29T19:31:55Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); var c=((Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; alert(c) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 395p212rj38fxgamm42e234jdhr04qb 435933 435932 2022-07-29T19:34:16Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; alert(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 2rkg5m5b7zo36665g13bblzbuna2oti 435934 435933 2022-07-29T19:35:30Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var height_obj=rect_dziecko[height]+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+margintop+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); if(height_rodzic>=height_obj){ przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; } }); if(przodek_height===undefined){return;}; var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 2gzzl32ad1c3b95zfedat3n9xmytale 435935 435934 2022-07-29T19:39:51Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys)-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); stm0681pxiap1538r8fiabx0d1a3rqt 435936 435935 2022-07-29T19:45:50Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); fdx9admw0aw0immlt0ficb2evi5r6l3 435937 435936 2022-07-29T19:51:58Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); kqdcajny418oz1cgwygxnqz5z05r5w6 435938 435937 2022-07-29T19:58:48Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height+(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))),wys)-(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); cs0hj90thg2ejqn5f4dfpx1ei4pojkl 435939 435938 2022-07-29T20:02:56Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height+(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))+((bottom_ab>=0)?(bottom_ab):(0))),wys)-(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); an1zfw2ydx8zwwene4bl73njhk2ocpr 435940 435939 2022-07-29T20:04:02Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); kqdcajny418oz1cgwygxnqz5z05r5w6 435941 435940 2022-07-29T20:12:40Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height,wys)-(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); lov6buj2x9zw48k5hx27xgi0aozkiwm 435942 435941 2022-07-29T20:14:19Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height,wys)-(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); aririsgqthsxs242ipizcczaim981mr 435943 435942 2022-07-29T20:15:13Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); kqdcajny418oz1cgwygxnqz5z05r5w6 435944 435943 2022-07-29T20:23:29Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height+(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))+((bottom_ab>=0)?(bottom_ab):(0))),wys)-(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))+((bottom_ab>=0)?(bottom_ab):(0))+(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); hn1lnoqc5k384gwe8f0tmy8fzn8xjzp 435945 435944 2022-07-29T20:25:46Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height+(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))+((bottom_ab>=0)?(bottom_ab):(0))),wys)-((((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))+((bottom_ab>=0)?(bottom_ab):(0))+((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); j6cta61g1ce8k2acyfmy8sr5559ziic 435946 435945 2022-07-29T20:27:53Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height,wys)-(((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); aririsgqthsxs242ipizcczaim981mr 435947 435946 2022-07-29T20:28:53Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')-bottom_ab)))+marginbottom+margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) ))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); kqdcajny418oz1cgwygxnqz5z05r5w6 435948 435947 2022-07-29T20:34:43Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); nhu6zib7htk31gcbgwr8o3jhuxs5m95 435949 435948 2022-07-29T20:48:24Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10+$(element_g).data('sctickyXYOld-top')+$(element_g).data('sctickyXYOld-bottom')): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5+$(element_g).data('sctickyXYOld-bottom')): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5+$(element_g).data('sctickyXYOld-top')):0) ) ) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); flglovfn7ve4vwhk2dn89iuoze6lhlj 435950 435949 2022-07-29T20:53:33Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop)),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop)-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); nhu6zib7htk31gcbgwr8o3jhuxs5m95 435951 435950 2022-07-29T20:57:47Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?($(element_g).data('sctickyXYOld-top')):(Math.max(0,$(element_g).data('sctickyXYOld-top')-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab))))),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-marginbottom-margintop-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 94iegpb9kpu2z7v7abdxqzkg42ueqxb 435952 435951 2022-07-29T21:04:17Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min((przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab))))),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-marginbottom-margintop-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); fjh7f4iniaswqvai5m3mf6bql2mtpbi 435953 435952 2022-07-29T21:07:18Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab))))-marginbottom-margintop),wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop-( (((rect_rodzic[top]<=0)&&(bottom_ab<=0))?(height_sticky+10): (((rect_rodzic[top]>=0)&&(bottom_ab<=0))?(5): (((rect_rodzic[top]<=0)&&(bottom_ab>=0))?(height_sticky+5):0) ) ) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 1djq1y4cnpam6mxgtmhgkmztt1cmm7f 435954 435953 2022-07-29T21:15:01Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-marginbottom-margintop-( (((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); sou993ydm17is80leshnyzyirqn8u76 435955 435954 2022-07-29T21:19:01Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop- (((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))) )*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); tv50y31qjblvwr8wzxuhwwen4v3wnvq 435956 435955 2022-07-29T21:22:10Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))))*(height_box_real/rect_dziecko[height]))+"px"; console.log(element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]) ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 3zy4d5h8h15yadem825td98fuydnuod 435957 435956 2022-07-29T21:31:24Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0))-marginbottom-margintop-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); dvm6yvo91e4cehya0btb73fld4xxaou 435958 435957 2022-07-29T21:40:43Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ck153pjhvpii8qziyu1rrw2o0thpohm 435960 435958 2022-07-29T23:15:34Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } element_g.style[width_box]="100%"; } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; element_g.style[height]="100%"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 6ldlzg3p3nq5oi15sdp9n1eqhvmjmmr 435961 435960 2022-07-29T23:18:48Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } //element_g.style[width_box]="100%"; } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; element_g.style[height]="100%"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 3xyx1sfqlmxixizpbsqzxuwlem1eaij 435962 435961 2022-07-29T23:20:26Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); height_rodzic=parseFloat(comp_rodz.getPropertyValue([height])); przodek_height=height_rodzic; width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ck153pjhvpii8qziyu1rrw2o0thpohm 435963 435962 2022-07-29T23:25:59Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_left=$(element_g).data("stickyXY-old-margin-"+left_box);var margin_right=$(element_g).data("stickyXY-old-margin-"+right_box); if(margin_left===undefined){ $(element_g).data("stickyXY-old-margin-"+left_box,comp.getPropertyValue("margin-"+left_box)); element_g.style["margin"+(left_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("stickyXY-old-margin-"+right_box,comp.getPropertyValue("margin-"+right_box)); element_g.style["margin"+(right_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("stickyXY-old-margin-"+left_box))+parseFloat($(element_g).data("stickyXY-old-margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 6tf7m8r0yxzpm8unx7w2pxzkxmm2lry 435966 435963 2022-07-30T08:14:56Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 28ench3np93kuzf0fzygy26bm47hjsd 435967 435966 2022-07-30T08:19:21Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(){ /*$("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',StickyXY);*/ $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',StickyXY); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',StickyXY); }; $(StickyXYBeginEnd); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); li5lixbn52ytsl76aq1k2hlhfrtkeap 435968 435967 2022-07-30T08:24:09Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(fun_zdarz){ $("*.mw-sticky-x, *.mw-sticky-y").on('mouseout',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('mouseover',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',fun_zdarz); }; $(StickyXYBeginEnd)(StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 2khvkn4h5vduhxjnjhxftxr7dpmvwvy 435973 435968 2022-07-30T08:36:13Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function StickyXYBeginEnd(fun_zdarz){ $("*.mw-sticky-x, *.mw-sticky-y").on('mouseout',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('mouseover',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionstart',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionrun',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitioncancel',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('transitionend',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('webkittransitionend',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('moztransitionend',fun_zdarz); $("*.mw-sticky-x, *.mw-sticky-y").on('otransitionend',fun_zdarz); }; StickyXYBeginEnd(StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); StickyXYBeginEnd(OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); pjcxrdrmvkj1w21129uh0ero68ms08s 435975 435973 2022-07-30T08:44:13Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('mouseout',fun_zdarz); fun_css.on('mouseover',fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 1ji86njlayfqh6juea1fp72bcccluds 435976 435975 2022-07-30T08:50:54Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); qktk3o1o3f6b4ydb71y3k9ddhu680li 435977 435976 2022-07-30T08:59:31Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.hover(fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); cdrx3k1m98fohvjymehjb0t2ai10w0w 435978 435977 2022-07-30T09:00:42Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.hover(fun_zdarz,fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 5m5uabk2zd28vp5ttq3zn22zea7h7l3 435979 435978 2022-07-30T09:02:18Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); qktk3o1o3f6b4ydb71y3k9ddhu680li 435980 435979 2022-07-30T09:05:29Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); //fun_css.mouseenter(fun_zdarz); //fun_css.mouseleave(fun_zdarz); /*fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz);*/ fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ncec7nx0j6sijkr9xi7j4qizpbwzeqo 435981 435980 2022-07-30T09:07:22Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); gzy45wcq4b083hx1hh30bb5ll8z774k 435982 435981 2022-07-30T09:09:29Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.hover(fun_zdarz,fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 5ei40hcxrcbqe7xtf84fnwjox2zatid 435983 435982 2022-07-30T09:12:11Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; //element_g.style[height]="auto"; //element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; //element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.hover(fun_zdarz,fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); krfigw8ea3ckquf6mut8mrtgbbmfzgy 435984 435983 2022-07-30T09:15:43Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; //element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.hover(fun_zdarz,fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); asjyknashhqmjh81nx35ry3q6lltvr3 435985 435984 2022-07-30T09:17:50Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.hover(fun_zdarz,fun_zdarz); //fun_css.on('transitionend',fun_zdarz); //fun_css.on('webkittransitionend',fun_zdarz); //fun_css.on('moztransitionend',fun_zdarz); //fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); slnan1a6hr4d5tiqoejrze1si96j3wz 435986 435985 2022-07-30T09:19:24Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.hover(fun_zdarz,function(){}); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); dex2kt92j7gh1lncl86mnpex2coshzv 435987 435986 2022-07-30T09:20:08Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); //fun_css.hover(fun_zdarz,function(){}); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 00yc2cqs0i0h6vqhvoihimymhmtea0y 435988 435987 2022-07-30T09:32:31Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow="scroll") ||(element.style.overflowX="auto") ||(element.style.overflowX="scroll") ||(element.style.overflowY="auto") ||(element.style.overflowY="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow="scroll") ||(element.style.overflowX="auto") ||(element.style.overflowX="scroll") ||(element.style.overflowY="auto") ||(element.style.overflowY="scroll") ){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } }); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 98melwqkuqsyqpm4b6ldputr4ogyqp7 435989 435988 2022-07-30T09:34:45Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } }); } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 00coibzbjpky1j8p5a58zg9ochyopo6 435991 435989 2022-07-30T09:40:41Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 3bmp6f8fwdykl57yy6n78nq9785oxal 435992 435991 2022-07-30T09:42:22Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); console.log(pozycje_paskow); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ey8lfpigzhvklryk7uveo17czs5jx6o 435993 435992 2022-07-30T09:47:54Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ console.log(element.scrollTop,element.scrollLeft) if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ //console.log(element.scrollTop,element.scrollLeft) pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); console.log(pozycje_paskow); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); f1axd1bd5qe17axaxz8y111jcthz48x 435994 435993 2022-07-30T09:51:09Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ console.log(element.scrollTop,element.scrollLeft) pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); console.log(pozycje_paskow); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); qekj68mvq2hggt1fe8tgkqxbkwo2ykm 435995 435994 2022-07-30T09:54:08Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element][0],pozycje_paskow[element][1],"TYTAN"); element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); sutjr0t6mz3hrqsy8titg05iivxd9ij 435996 435995 2022-07-30T09:56:35Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(element,element.scrollTop,element.scrollLeft); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element][0],pozycje_paskow[element][1],"TYTAN"); element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); iimyp7cel0ttz3qmg19t3ahe79na6w9 435997 435996 2022-07-30T09:58:40Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(element,element.scrollTop,element.scrollLeft); } }); console.log(pozycje_paskow); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element][0],pozycje_paskow[element][1],"TYTAN"); element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); icwy5sfs6h0cu8586q05dg735b47og0 435998 435997 2022-07-30T10:01:41Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(element,element.scrollTop,element.scrollLeft); } }); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element]) } element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element][0],pozycje_paskow[element][1],"TYTAN"); element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); al220ns8n1o5kvlhb8zw52k7gamo3xi 435999 435998 2022-07-30T10:03:50Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element][0],pozycje_paskow[element][1]); } element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element][0],pozycje_paskow[element][1],"TYTAN"); element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); s9z13v0oygl8fewfbagctfti3lfnta7 436000 435999 2022-07-30T10:07:23Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); var ele=$(element_g).find('*'); for(var i=0;i<ele.length;++i){ if((element.style.overflow=="auto") ||(element.style.overflow=="scroll") ||(element.style.overflowX=="auto") ||(element.style.overflowX=="scroll") ||(element.style.overflowY=="auto") ||(element.style.overflowY=="scroll") ){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }; console.log(pozycje_paskow,"MAMUT"); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); a7hb6aoclp6vt6zz7z5txmazzfptnd3 436001 436000 2022-07-30T10:08:50Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); var ele=$(element_g).find('*'); for(var i=0;i<ele.length;++i){ if((ele[i].style.overflow=="auto") ||(ele[i].style.overflow=="scroll") ||(ele[i].style.overflowX=="auto") ||(ele[i].style.overflowX=="scroll") ||(ele[i].style.overflowY=="auto") ||(ele[i].style.overflowY=="scroll") ){ pozycje_paskow[ele[i]]=new Array(ele[i].scrollTop,ele[i].scrollLeft); } }; console.log(pozycje_paskow,"MAMUT"); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ti58mjkmafnvda75ex5mpp1mjhb6oz7 436002 436001 2022-07-30T10:11:22Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(pozycje_paskow[element],element); }); console.log(pozycje_paskow,"MAMUT"); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); jq1q6yqunfw469g5lgi3hx3k5ltkgb1 436003 436002 2022-07-30T10:14:14Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(pozycje_paskow[element],element,"MAMUT!"); }); //console.log(pozycje_paskow,"MAMUT"); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); bv4b07w0znrfgvpl3ij9nc4wv9mem1k 436004 436003 2022-07-30T10:18:57Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(pozycje_paskow[element],element,"MAMUT!"); } }); //console.log(pozycje_paskow,"MAMUT"); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); ietjresu3ykrb482tjvyrbnimi0hslv 436005 436004 2022-07-30T10:21:25Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element],element,"MAMUT!"); } element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ element.scrollTop=pozycje_paskow[element][0]; element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); buoangehphbj306ywaucvcuyj892v01 436006 436005 2022-07-30T10:22:30Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); } }); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element],element,"MAMUT!"); } element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ //element.scrollTop=pozycje_paskow[element][0]; //element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 453ov6s08dvkyzdecdk1bvb4wnl0k7p 436007 436006 2022-07-30T10:24:08Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow[element]=new Array(element.scrollTop,element.scrollLeft); console.log(element); } }); for(var element in pozycje_paskow){ console.log(pozycje_paskow[element],element,"MAMUT!"); } element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ //element.scrollTop=pozycje_paskow[element][0]; //element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 2i251rkwczstt7nolvswke6qni0ofsw 436008 436007 2022-07-30T10:26:49Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); console.log(element); } }); for(var i in pozycje_paskow){ console.log(pozycje_paskow[i][0],pozycje_paskow[i][1],pozycje_paskow[i][2],"MAMUT!"); } element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var element in pozycje_paskow){ //element.scrollTop=pozycje_paskow[element][0]; //element.scrollLeft=pozycje_paskow[element][1]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); nauf6nl80rzg2iwpws886ddz5477bzt 436009 436008 2022-07-30T10:30:05Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); console.log(element); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); d5p70v827nxo55suxsw0giyhmx91hha 436010 436009 2022-07-30T10:30:54Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); eytpdjpj1b5tuievjowe7x0ylvwjvoi 436011 436010 2022-07-30T10:34:37Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 9bss09xej9ldvevtba29t8tg46s742d 436012 436011 2022-07-30T10:38:28Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]; var bottom_ab=(wys-rect_rodzic[bottom]); var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); } }); var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); j5ol5uv1wlxc3xy8sy1qp3p4p0f8ecn 436015 436012 2022-07-30T10:58:44Z Persino 2851 javascript text/javascript mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true ); /**/ /*Funkcja do liczenia, czy nastąpiło przepełnienie poziome lub pionowe*/ function ScrollBarOverflow(){ $('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){ /*start overflow*/ var comp=window.getComputedStyle(element_g, null); var display=comp.getPropertyValue("display"); if(display=="none"){return;} var overflow=comp.getPropertyValue("overflow"); var overflow_x=$(element_g).hasClass('mw-overflow-x'); if(overflow_x){ var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); if((overflowX)&&(overflowX=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-x"); const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false if(hasHorizontalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-x"); } } } var overflow_y=$(element_g).hasClass('mw-overflow-y'); if(overflow_y){ var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflowY)&&(overflowY=="auto")){ element_g.classList.remove("mw-scrollbar-overflow-y"); const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false if(hasVerticalScrollbar){ element_g.classList.add("mw-scrollbar-overflow-y"); } } } /*koniec overflow*/ }); } $(ScrollBarOverflow); $(window).on('resize', ScrollBarOverflow); /*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/ function StickyXY(){ $('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunStickyXY(height,top,bottom,width_box,left_box,right_box){ var height_sticky=0; $('body.skin-vector-search-vue #vector-sticky-header').each(function(i,el){ var rect_sticky=el.getBoundingClientRect(); height_sticky=rect_sticky[height]; }); var stickyXYTopOld=$(element_g).data('sctickyXYOld-top');var stickyXYBottomOld=$(element_g).data('sctickyXYOld-bottom'); if(stickyXYTopOld===undefined){ var topold_war=parseFloat(element_g.style[top]); $(element_g).data('sctickyXYOld-top',((!isNaN(topold_war))?topold_war:0)); } if(stickyXYBottomOld===undefined){ var bottomold_war=parseFloat(element_g.style[bottom]); $(element_g).data('sctickyXYOld-bottom',((!isNaN(bottomold_war))?bottomold_war:0)); } var topold=$(element_g).data('sctickyXYOld-top')+height_sticky+5; var margintop=parseFloat(comp.getPropertyValue("margin-"+top)); margintop=((!isNaN(margintop))?margintop:0); var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom)); marginbottom=((!isNaN(marginbottom))?marginbottom:0); var przodek_height=undefined; var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); } }); element_g.style[height]="auto"; element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; element_g.style[top]="0"; var rect_dziecko=element_g.getBoundingClientRect(); var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]; var parents_node_fun=$(element_g).parents('.mw-parent-node').first(); if((parents_node_fun==null)||(parents_node_fun.length==0)){return;} var rect_rodzic; parents_node_fun.each(function(i,element){ rect_rodzic=element.getBoundingClientRect(); }); var top_ab=rect_rodzic[top]-margintop; var bottom_ab=(wys-rect_rodzic[bottom])-marginbottom; var width_rodzic=null; var rodzic_element=undefined; var comp_rodz; parents_node_fun.each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); przodek_height=parseFloat(comp_rodz.getPropertyValue([height])); width_rodzic=width_box?comp_rodz.getPropertyValue([width_box]):null; rodzic_element=element; }); var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab))); element_g.style[top]=top_obj+"px"; element_g.style[bottom]="auto"; element_g.style[height]=(element_g["scroll"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+1)+"px"; if(width_rodzic){ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width_box]){ if(rect_dziecko[width_box]>parseFloat(width_rodzic)){ if(width_box=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width_box=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width_box)); var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px"; }else{ element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width_box]+"px"; } } var height_box_real=parseFloat(comp.getPropertyValue(height)); var rect_dziecko=element_g.getBoundingClientRect(); element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=((Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('sctickyXYOld-bottom')+5):(Math.max(0,$(element_g).data('sctickyXYOld-bottom')+5-bottom_ab)))+marginbottom+margintop))*(height_box_real/rect_dziecko[height]))+"px"; ScrollBarOverflow(); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } } var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var sticky_x=$(element_g).hasClass('mw-sticky-x'); var sticky_y=$(element_g).hasClass('mw-sticky-y'); if((sticky_x)&&(!sticky_y)){ FunStickyXY("width","left","right","height","top","bottom"); }else if((!sticky_x)&&(sticky_y)){ FunStickyXY("height","top","bottom","width","left","right"); }else{ FunStickyXY("width","left","right",null); FunStickyXY("height","top","bottom",null); } }); } $(StickyXY); $(window).on('scroll', StickyXY); $(window).on('resize', StickyXY); /*Uruchamianie dodatkowych zdarzeń do StickyXY*/ function ZdarzeniaXYBeginEnd(css,fun_zdarz){ var fun_css=$(css); fun_css.mouseenter(fun_zdarz); fun_css.mouseleave(fun_zdarz); fun_css.on('transitionstart',fun_zdarz); fun_css.on('webkittransitionstart',fun_zdarz); fun_css.on('moztransitionstart',fun_zdarz); fun_css.on('otransitionstart',fun_zdarz); fun_css.on('transitionrun',fun_zdarz); fun_css.on('webkittransitionrun',fun_zdarz); fun_css.on('moztransitionrun',fun_zdarz); fun_css.on('otransitionrun',fun_zdarz); fun_css.on('transitioncancel',fun_zdarz); fun_css.on('webkittransitioncancel',fun_zdarz); fun_css.on('moztransitioncancel',fun_zdarz); fun_css.on('otransitioncancel',fun_zdarz); fun_css.on('transitionend',fun_zdarz); fun_css.on('webkittransitionend',fun_zdarz); fun_css.on('moztransitionend',fun_zdarz); fun_css.on('otransitionend',fun_zdarz); }; ZdarzeniaXYBeginEnd("*.mw-sticky-x, *.mw-sticky-y",StickyXY); /*Koniec dodatkowych zdarzeń*/ /*Uruchamianie dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz kalkulacyjny CSS*/ function RamkiTableIDiv(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){ $(obiekt).each(function(i,element_f){ return new Promise(function(resolve,reject){ var czas=0; function Czekaj(){ if(czas>30000){ reject(); } var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i); if((collapsebutton!==null)&&(collapsebutton.length>0)){ var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i); if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();} resolve(i); }else{ czas+=100; setTimeout(Czekaj,100); } } Czekaj(); }).then(function(i){ $('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){ var href=element_g.getAttribute('href'); if((href!=null)&&(href!="")){ var col="[\\s;\\(\\,]*javascript:"+fun_obiektu+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*"; var re_frame = new RegExp(col,'g'); var re_javascript=new RegExp("^[\\s;]*javascript:"); if((re_javascript.test(href))&&(re_frame.test(href))){ element_g.setAttribute('href',href.replace(/[;\s]*$/g,"")+';javascript:ScrollBarOverflow();javascript:StickyXY();') } } }); }); }); }; /*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','collapseTable'); /*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/ RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','toggleNavigationBar'); /*Koniec dodatkowych funkcji*/ /*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/ function OptimalXY(){ $('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){ var comp=window.getComputedStyle(element_g, null); function FunOptimalXY(width,left,right){ var pozycje_paskow=new Array(); $(element_g).find('*').each(function(i,element){ var comp=window.getComputedStyle(element, null); var overflow=comp.getPropertyValue("overflow"); var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x")); var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y")); if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){ pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft)); } }); var width_rodzic=null; var rodzic_node; var comp_rodz; $(element_g).parents('.mw-parent-node').first().each(function(i,element){ comp_rodz=window.getComputedStyle(element,null); width_rodzic=comp_rodz.getPropertyValue([width]); rodzic_node=element; }); if(width_rodzic!==null){ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none"; var width_box_real=parseFloat(comp.getPropertyValue(width)); var rect_dziecko=element_g.getBoundingClientRect(); if(width_box_real>rect_dziecko[width]){ var rect_dziecko=element_g.getBoundingClientRect(); if(rect_dziecko[width]>parseFloat(width_rodzic)){ if(width=="width"){ element_g.classList.add('mw-scrollbar-overflow-x'); }else{ element_g.classList.add('mw-scrollbar-overflow-y'); } }else{ if(width=="width"){ element_g.classList.remove('mw-scrollbar-overflow-x'); }else{ element_g.classList.remove('mw-scrollbar-overflow-y'); } } var width_box_real=parseFloat(comp.getPropertyValue(width)); var margin_left=$(element_g).data("optimalXY-old-margin-"+left);var margin_right=$(element_g).data("optimalXY-old-margin-"+right); if(margin_left===undefined){ $(element_g).data("optimalXY-old-margin-"+left,comp.getPropertyValue("margin-"+left)); element_g.style["margin"+(left.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } if(margin_right===undefined){ $(element_g).data("optimalXY-old-margin-"+right,comp.getPropertyValue("margin-"+right)); element_g.style["margin"+(right.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="0"; } var margin_all=parseFloat($(element_g).data("optimalXY-old-margin-"+left))+parseFloat($(element_g).data("optimalXY-old-margin-"+right)); margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right)); var dlugosc=(parseFloat(width_rodzic)-margin_all); dlugosc=((dlugosc>=0)?dlugosc:0); element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px"; }else{ element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=rect_dziecko[width]+"px"; } } $(element_g).parent().first().each(function(i,element){ var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} element.style.width=window.getComputedStyle(rodzic_node,null).getPropertyValue("width"); }); for(var i in pozycje_paskow){ pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1]; pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2]; } }; var display=comp.getPropertyValue("display"); if(display=="none"){return;} var position=comp.getPropertyValue("position"); if(position!="absolute"){return;} var optimal_x=$(element_g).hasClass('mw-optimal-x'); var optimal_y=$(element_g).hasClass('mw-optimal-y'); if(optimal_x){ FunOptimalXY("width","left","right"); } if(optimal_y){ FunOptimalXY("height","top","bottom"); } }); } $(OptimalXY); ZdarzeniaXYBeginEnd('*.mw-optimal-x, *.mw-optimal-y',OptimalXY); $(window).on("resize",OptimalXY); /*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/ function StronaStart(){ var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks'); elements.parent().show(); $('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){ element.style.display="none"; }); $('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){ element.style.display="flex"; }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); function StronaStartFun(){ var id=this; $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().first().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().last().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="inline"; }else{ element.style.display="none"; } }); $(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){ var display=element.style.display; if(display=="none"){ element.style.display="flex"; }else{ element.style.display="none"; } }); $(ScrollBarOverflow);$(StickyXY);$(OptimalXY); } elements.on('click',StronaStartFun); } $(StronaStart); 888wxzjjrly7qu2s8468l3g9mfri9k4