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